蜗牛在\”网站实现HTTPS加密进阶 – Namecheap购买Comodo PositiveSSL证书\”文章中已经实战记录到购买Namecheap商家提供的Comodo PositiveSSL证书,费用还是比较便宜的年付大约50多元。对于一般用户而言,其实与Let\’s Encrypt证书也没有多大的区别(也许有区别,但是实际的功能展现是一样的)。在申请到证书且下载到本地之后,我们就可以安装到服务器、网站中。
一般,安装SSL证书都在VPS、或者服务器环境中,虚拟主机中当然也是可以安装的,记得目前大部分cPanel面板都自带Let\’s Encrypt证书一键安装。在这篇文章中,蜗牛准备测试安装到LNMP(Nginx)网站环境中。
文章目录
隐藏
第一、整理SSL证书文件
第二、修改.conf配置文件
第三、站点地址更换
第一、整理SSL证书文件
这里我们需要.crt和.key文件。在之前文章中,我们通过工具获取到域名的.key文件,当时蜗牛提到过让我们保存到本地的,到时候需要使用到的。
在申请到Namecheap证书之后,我们将证书安装包下载到本地,会看到www_itbulu_com.ca-bundle和www_itbulu_com.crt两个文件,我们需要合并到一个.crt里,将复制.ca-bundle里的所有内容脚本到.crt文件中,这样组合成一个.crt文件。
这里我们将整理好的www.itbulu.com.key和www.itbulu.com.crt文件上传到/home/ssl/目录中,当然目录我们可以根据实际想要的自己定义,只要记住路径就可以,等会需要配置文件。
第二、修改.conf配置文件
这里我们如果采用的Nginx环境可以用这个方法,如果是Apache需要用到这个方法(参考:常规网站Web环境配置SSL证书 – Nginx、Apache、IIS)。
/usr/local/nginx/conf/vhost/
默认在这个目录,有些时候不同的Nginx配置环境默认目录不同,找到对应域名的.conf文件,然后配置。
listen 443 ssl http2;
ssl_certificate /home/ssl/www.itbulu.com.crt;
ssl_certificate_key /home/ssl/www.itbulu.com.key;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_timeout 10m;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_buffer_size 1400;
add_header Strict-Transport-Security max-age=15768000;
ssl_stapling on;
ssl_stapling_verify on;
在对应配置文件的80端口中间加入上面一段脚本。当然如果我们自己的网站需要用到各自的配置文件地址和域名。
配置完毕之后,我们重启Nginx检查是否有报错,没有报错就应该没有问题。
第三、站点地址更换
因为默认站点里都用的HTTP地址格式,我们需要批量将HTTP替换成HTTPS,如果是内容中的可以使用\”两个WordPress内容批量快速替换字符方法 – MYSQL命令和插件工具\”进行批量替换修改。如果是模板中的文件,我们需要手工一个个修改,只有全部修改完毕,我们才可以看到地址栏前面的绿锁。
这样,我们就可以将整个网站都设置和启用SSL证书,对于其他证书的配置也可以类似这样。