WordPress网站宝塔面板开启HSTS预加载

老白博客@老白的WordPress优化教程:WordPress网站宝塔面板开启HSTS预加载。简单来说就是“用户在访问网站时,首先需要判断你是http网站还是https网站,然后再访问。而通过这个预加载列表,可以实现在用户访问之前就能知道是https,省略了判断这个流程,从而达到节省时间,实现WordPress网站加速的目的”。老白此处使用的是Nginx服务器,宝塔面板,相关设置方法如下:

WordPress网站宝塔面板开启HSTS预加载

1.宝塔面板开启HSTS

打开宝塔面板的网站设置,进入配置文件,将原代码,类似下面这段,删除

add_header strict-transport-security

 

然后改为下面这行

 add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";

开启了HSTS后,你部署SSL/TLS的服务检测得分就可能是A+以上了。ssllabs官网以及演示如下:

 

2.HSTSPRELOAD提交

然后,再到https://hstspreload.org/网站,提交一下你的网站。之后,各大主流浏览器就会内置你的域名到他们的hsts列表中,直接内置到浏览器中。

2.1 做好Http跳转Https

将www.xcbtmw.com以及任意二级域名都要做好Http跳转到Https,启用了HSTS后请求地址为 header 头中的 Location会显示307 ,即要求浏览器继续向 Location 的地址 POST 内容。

2.2  加入HSTS Preload List

进入hstspreload官网,输入你的域名,然后检测结果会告诉是否符合加入HSTS Preload List,没有问题的话勾选确定。

 

3. 注意事项

3.1  是否成功加入HSTS Preload List

直接到下列网址搜索是否有你的域名即可:

当然,加入到了HSTS Preload List后,你可能还需要等待1-2月,待新版本的Chrome和Chromium、Firefox、IE等发布后,你的域名算是正式被各大浏览器承认并强制使用Https访问了,你可以在Chrome浏览器的地址框中输入“chrome://net-internals/#hsts”查看。

3.2  如何撤销HSTS Preload List

官方也提供了一个申请删除HSTS Preload List,不过需要注意的是撤销HSTS Preload List和加入HSTS Preload List一样,花费的时间可能需要几个月以上,所以申请HSTS Preload List前一定要谨慎。

3.3 大佬总结

(以下总结转载自:https://cloud.tencent.com/developer/article/1685568,感谢站长分享)

由于HSTS Preload List是一个内置于各大浏览器的Https网站列表,所以能否加入成功除了审核通过外,还得看浏览器版本的更新。一旦加入HSTS Preload List了想要退出就比较麻烦了,所以加入前一定要考虑好。也就是说开启HSTS后服务器上面的同一个根域名的所有子域名都要上Https,所以有的时候我们需要将子域名用来本地开发,每次都要配置HTTPS还是很麻烦的!而且同一个IP上网站域名都要上Https,如果你不部署也会给你强制跳转到https,导致无法打开,这真的是很麻烦。

那么哪些网站适合加入HSTS Preload List?个人博客或者网站可以来玩一玩,对于安全性要求比较高的电商网站,会员管理后台等完全可以使用HSTS Preload List,对于一些有Http需要的还是不加入得好。

虽然说https防劫持的效果很好,有的时候想要防数据劫持或广告插入不仅要看https,还要看浏览器。比如UC拉到最底下的时候会经常出现不相干的广告。所以说就算你加入了https也不是万能的,有些流氓浏览器真的没办法。广告劫持通常与DNS过程无关,即使HSTS也无法规避由DNS劫持带来的网站打开错误,这些大家也要了解一下!