【教程】如何简单实现WordPress全站HTTPS

2017-09-19 0 条评论 1.34k 次阅读 4 人点赞

如今HTTPS加密访问已经是大势所趋,稍微有点追求的站长都把自己的网站折腾成为https访问。https的好处很多数据传输更安全、看上去更可靠啊,重要的是谷歌承认采用https的网站可以获得更高的评分,对于做网站的这点比较重要。对我来说学习的过程更重要,所以折腾折腾,发现很简单的就把网站变成全站https了,这里主要介绍了两种方法,是因为Kiwi在两个部署在不同主机服务商的网站上都实现了https,实现的过程都同样很简单。而之所以方式不同是因为主机服务上提供的服务不同,因此流程也就不同。

方法一:

这个方法是针对主机商是DreamHost的网站,因为他提供了很便捷的SSL certificates管理,所以这个很简单。

1.登录主机管理panel,打开DOMAINS>Secure Hosting,找到下方Add a new SSL certificate,这里使用免费的About Let's Encrypt SSL,点击ADD 。

2.按提示选择域名、套餐等,确定后点击Add Now 。

3.成功后如下

4.最后你还需要做的事情就是HTTP重定向以及全站图片文件HTTPS。首先如果你希望重定向所有的非 https 到 https 访问,可以在 nginx 配置中添加如下 server block

server {  
    listen 80;
    server_name your_domain.com;
    return https://your_domain.com$request_uri;
}

对于之前上传的图片,文章中相关的URL并不是https,我们需要切换过去,这里需要安装一个插件:Really Simple SSL;安装启用即可全站https,记得让.htaccess文件可写。 到此为止就配置成功了。


方法二:

这个方法是针对后台使用cpanel面板的用户,这个其实也很简单,只是需要自行填写Certificate和Private Key。

1.安装一个wordpress插件:WP Encrypt 插件

WP Encrypt 插件支持自动从 Let’s Encrypt 处获取SSL证书并自动为你安装到你的WordPress上。当然,WP Encrypt插件对你的网站环境有一定的要求:

网站需运行在PHP 5.3以上
支持cURL和openssl

安装完成以后,进入设置界面,填入组织名,国家和国家缩写保存信息即可,插件默认会帮你填写。常用的国家缩写有US(美国),UK(英国),CN(中国)。

下面还有三个附加设置,第一个勾选后插件可以在证书到期后自动更新证书。第二个,则是在证书即将到期的时候在后台提示。第三个,则是设置在距离到期还有多少天的时候显示提示。

填写完以上信息点击保存更改之后,下面会出现一个按钮要求注册Let’s Encrypt帐号。

注册之后下方又会多出一个按钮,点击之后就可以生成Let’s Encrypt证书。

点击Generate Certificate之后下方会显示证书生成的位置。

证书生成以后需要使用的控制面板安装证书,也直接通过SSH方式安装证书(方法请自行百度)。这里我们使用控制面板安装证书。

2.登录cpanel,找到并进入Security>SSL/TLS 。

3.点击Manage SSL sites

4.找到Install an SSL Website,首先选择域名,然后你需要在FTP中下载刚才WP Encrypt生成的证书,这里需要用到两个文件:cert.pem和private.pem,填写方式如下:

5.安装好后重复方法一的第4步即可。


同时在这里推荐一个插件,SSL Insecure Content Fixer。它能够重载网页上不安全的内容并通过 HTTPS 协议的形式向用户发送,从而使整个网页的一切内容都能处于安全传输的环境下。根据需要的不同,可以自行选择不同的重载范围,避免因为https占用过多的服务器资源。当然如果服务器资源足够内容不多(像本站)就可以选择最高等级来协助网站向 HTTPS 转换。

当然,以上方法适用于简单的个人网站转向https,更高级更稳妥的方法Kiwi也正在摸索,待后期摸索出来再来分享。

PS:由于本人水平有限,以上内容如有疏漏和不正之处,希望在下方留言指正。

Kiwi

Valar Morghulis

文章评论(0)