艺航领域开启全站SSL加密

如题。已在全站开启SSL加密。站点访问因而变得更加安全。

写此文章以纪念。有空写一下过程。

获取SSL证书

推荐Let’s Encrypt

Let’s Encrypt is a free, automated, and open certificate authority brought to you by the non-profit Internet Security Research Group (ISRG).

我就在一个子域启用了它作为证书。

有些VPS面板(如VESTA)自带Let’s Encrypt的证书获取,有些主机商提供免费证书(如我主站的主机商)。如果你有shell权限(你拥有一个VPS等),点击这里来获取操作提示。如果你的主机商未提供免费的证书或你没有shell权限,可能你需要寻找其他证书提供商或换个主机。

需要注意的是,Chrome 不再信任WoSign,StartCom,Symantec证书。

.htaccess增加以下代码

1
2
3
4
# 强制 HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP\_HOST}%{REQUEST\_URI} \[R=301,L\]

wp-config.php增加以下代码

1
2
3
/* 强制后台和登录使用 SSL */
define('FORCE\_SSL\_LOGIN', true);
define('FORCE\_SSL\_ADMIN', true);

后台WordPress地址更正为HTTPS地址

(可选,我没有使用)更正图片地址

在主题functions.php加入

1
2
3
4
5
6
7
8
/* 替换图片链接为 https */
function my\_content\_manipulator($content){
if( is_ssl() ){
$content = str_replace('http://www.yourdomain.com/wp-content/uploads', 'https://www.yourdomain.com/wp-content/uploads', $content);
}
return $content;
}
add\_filter('the\_content', 'my\_content\_manipulator');

浏览网站,使用如Chrome中的开发者工具查找未加密的资源并修正。

未加密的图像资源


艺航领域开启全站SSL加密
https://yharea.com/86/
作者
艺航
发布于
2017年8月22日
许可协议