Milo Guo

教程-知识分享-成长积累

完成WordPress站点的全站SSL访问

#阿里云SSL服务商政策更新,本文不再适用,将会于近期更新用于Wordpress的最新免费SSL配置方案#

众所周知Http是一种明文传输规则,且缺乏完整性检测,但却是互联网世界使用最为广泛的Wbe协议。HTTPS 协议是由 HTTP 加上 TLS/SSL 协议构建的可进行加密传输、身份认证的网络协议,主要通过数字证书、加密算法、非对称密钥等技术完成互联网数据传输加密,实现互联网传输安全保护。

参考文献:
1. https://baike.baidu.com/item/https/285356

本站点自建立以来一直使用Http协议,存在较大的安全隐患。本文记录了一种Wordpress站点全站Https化的流程。

Step1 申请SSL证书(2022)

目前主流的域名运营商都有免费的SSl证书提供,在此请读者自行在互联网搜索免费SSL证书。本文以阿里云为例介绍证书申请流程,本教程最后一次验证时间为2022年4月24日,若流程发生变更本文自动作废。

首先注册并登录阿里云在搜索框中输入“SSL证书”,点击搜索。

搜索SSL证书

在第一个结果的小字部分中点击“注册免费领20张证书”。

点击注册免费领20张证书

在限时优惠栏下方找到Digicert DV单域名,确认价格为零元后点击立即购买。

Digicert DV单域名证书零元购

购买后展开网页左侧栏点击SSL证书(应用安全),将其下载到本地。

进入SSL证书管理
点击免费证书,随后创建证书
在右侧首先会出现签发选项,按步骤完成后出现下载,点击下载
选择对应服务器类型的证书下载到本地即可

至此,SSL证书的申请已经完成,有效期为1年,一年后到期需要重新申请并在服务端更换证书文件。

Step2 SSL证书的部署

本文仅以Nginx1.18的Wordpress为例介绍部署流程。使用XFTP登录SFTP空间,将证书(.pem和.key文件)复制到证书所在的文件夹内(将文件夹内的www.example.com文件全部删除即可)。开始部署前请创建服务器快照以备不测。

在此上传证书文件

随后在vhost文件夹编辑wordpress.conf文件(注意备份),将ssl_certificate所在行的最右侧改为.pem文件的文件名(.crt改为.pem);将ssl_certificate_key所在行的最右侧改为.key文件的文件名。将下方guohaoming.com位置的文字替换为你自己的域名(无需www)。

编辑wordpress.conf文件

完成上述操作后保存重启服务器即可。在此注意:文件修改后一定要先选择保存再关闭文件窗口,上传证书后要确认证书文件大小是否正确,若为0kb则需要重新上传。笔者在此因为文件上传问题停滞了许久,经过仔细排查才明白原因。重启服务器后若站点能正常访问并且出现https的小锁则说明部署成功。补充(2023年4月28日):关于TSL版本,建议删除TSLv1.2以前的两个版本,否则SSL测试评级无法获得A。

Step3 WordPress设置

首先在浏览器中清空cookies缓存,然后再进入WP的后台(一定要先清空缓存,否则会出现问题无法进入后台)。在设置-常规中将http改为https,随后保存即可。

添加https开头

至此我们便完成了Wordpress的全站Https化。

本文全部由本人原创

参考资料若侵权请联系我删除

本人对全文拥有最终解释权

若有其他疑问请邮件联系