HSTS 一直是很烦的东西,因为对于虚拟主机来说太难添加了,百度到的都是给 VPS 添加的版本,在 StackOverflow 找到的.htaccess 方法也是无效的。
最后闲得无聊找弹幕插件时找到了添加 HSTS 头的新方法(这个也是没谁了):
没错,就是使用 PHP 的 header() 函数。
header("Strict-Transport-Security: max-age=63072000; includeSubdomains; preload");
把这个加在网站根目录下的 index.php 中(没错我就加在了博客根目录)。
不建议加在主题里,加在主题里的 index.php 可能会出现一系列奇奇怪怪的事,比如失去 HSTS,HSTS 无效等(你确定你永远不换主题?)
更绝一点就是加入 HSTS Preload List,已经申请成功:
我搞了个弹幕插件,你们去主页看看效果如何啊。
参考文章(来自泪雪博客):https://zhangzifan.com/http-hsts.html
Comments 19 条评论
博主 小忆
HSTS???
博主 LiarOnce
@小忆 是的没毛病
博主 路过
include sub domain 确定这样? 我深受其害
博主 LiarOnce
@路过 是 includeSubdomains,你加空格了?这个的意思是对子域名开启 HSTS
博主 路过
@LiarOnce en,我以前这样设过导致我所有的子域名都强迫 SS,然后子域名用不支持 SSL 的阿里云虚拟主机的我有种想卸载浏览器的冲动
博主 LiarOnce
@路过 这个选项是可选的,你可以不加来着。
博主 路过
@LiarOnce en,我没加子域名,,只是吐槽下这玩意有毒
博主 路过
@路过 对了,https://huxiaofan.com/友链吗?
博主 LiarOnce
@路过 可以是可以,不过记得以后在留言板或者内页处申请 #[狂汗],不然很凌乱啊
博主 初夏阳光
666666,直接在 vhost 配置里搞 Strict-Transport-Security: max-age=63072000; includeSubdomains; preload, Nginx 重启居然会错,不知道这是什么锅,心累
博主 LiarOnce
@初夏阳光 备案通过了?
博主 初夏阳光
@LiarOnce 对啊,通过了,还申请了个腾讯云认证,大好河山一片绿,逼格很高哦 (´-ω-`)
博主 Shana
这个真的有用么 = =| 。。。
博主 LiarOnce
@Shana 防劫持还是有点的
博主 yufan
我好像弄过这个东西,没鸟用就去掉了
博主 LiarOnce
@yufan 挂着好看+能装逼 #[滑稽]
博主 yufan
@LiarOnce 这个一般看不出来。。拜见逼王 #[滑稽]
博主 尚寂新
话说这个是属于什么东西 qwq
博主 LiarOnce
@尚寂新 就是让浏览器访问加了 HSTS 的网站时强行以 HTTPS 连接