准备
假设CentOS7 已经安装了Apache Web服务器.
yum install mod_ssl openssl
安装完毕后,会自动生成 /etc/httpd/conf.d/ssl.conf 文件
然后就是相关的证书要准备好 SSL证书
这里用的是阿里云Symantec 免费型DV SSL证书,解压后将Apache的证书传至服务器。
配置
证书上传至服务器后,接下来配置Apache
配置Apache Web服务器
修改conf.d下的ssl.conf文件,打开,找到对应的参数修改,其中三个文件的地址自行定义为证书上传的位置
# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol all -SSLv2 -SSLv3
# 修改加密套件如下
SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/214830400260231.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem
然后在conf/http.conf下配置以下内容或者在自建的vhost-conf.d下新建一个配置文件,其中路径和域名换成自己的
<VirtualHost *:443>
DocumentRoot /var/www/html
ServerName www.example.com
ServerAlias www.example.com
<Directory "/var/www/html">
Options FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
然后,重新启动httpd服务使更改生效
systemctl restart httpd
Web服务器现在就可以使用HTTPS啦
闲言碎语
注意,如果是用wordpress部署的网站,再开启https后会出现排版混乱,后台登陆不上等各种奇葩的问题,最简单的解决方法是安装插件really-simple-ssl,安装之后基本能解决所有的https问题。