在线咨询
微信咨询
服务热线
服务热线:15639912513
TOP
当前位置:
首页 > 新闻中心> 前端设计>在Apache服务器上安装SSL证书

在Apache服务器上安装SSL证书

发布时间:2019-08-17 浏览:4088次

在制作微信小程序定制开发的过程中,遇到微信小程序调用数据的情况,根据微信小程序的要求,调用数据的网址必须是https。

下面总结两种方案,一种是根据Let'sEncrypt SSL证书添加方法,一种是申请证书安装使用。

第一种方案:

1.jpg

根据流程走到最后一步选择ssl证书安装,选择2,按下回车。生成证书。

cert.pem  - Apache服务器端证书

chain.pem  - Apache根证书和中继证书

fullchain.pem  - Nginx所需要ssl_certificate文件

privkey.pem - 安全证书KEY文件

这是生成的证书的概述。

当提示Let's Encrypt SSL Certificate create successfully,说明证书安装完毕。

最后输入https+域名即可访问。


第二种,申请ssl证书,部署安装。这个比较麻烦。

1、本人申请的是阿里域名证书,申请流程就不讲了,大家可以自己试试,不懂问我。

请看图:

1.jpg

2、点击下载后,需要上传到服务器上。

在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为a.key;

打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”。

#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)

#Include conf/extra/httpd-ssl.conf(删除行首的配置语句注释符号“#”,保存后退出)

 打开 apache 安装目录下 conf/extratpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:
# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/a_public.crt
# 证书私钥配置
SSLCertificateKeyFile cert/a.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/a_chain.crt 

重启 Apache。

apache

启动

systemctl start httpd

停止

systemctl stop httpd

重启

systemctl restart httpd

3、第二步整完后,还是访问不了。无法使用https。为什么呢?因为第二步只是设置了服务器端,站点并没有设置。下面是站点的设置,经测试,可以直接使用。

DocumentRoot "你的站点目录地址"

ServerName www.xhhkj.cn

ServerAlias xhhkj.cn

SSLEngine on

SSLCertificateFile 根证书的目录所在地+a_public.crt

SSLCertificateKeyFile 私钥文件所在地+cert/a.key

SSLCertificateChainFile 证书链(中间证书)文件所在地+a_chain.crt


4、当你设置完后,发现还是无法访问,有可能是防火墙把443端口给屏蔽了,麻烦自己开启下防火墙443端口。开启命令是

firewall-cmd --zone=public --add-port=443/tcp --permanent

firewall-cmd --reload

最后,成功了!


设置Apache http自动跳转https。

如果需要apache http自动跳转到https的站长朋友,请接着看。

需要在站点host中的这个中间,添加以下重定向代码。添加如下设置代码:

RewriteEngine on

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R]


TAG
4088
该内容对我有帮助