虚拟主机中Apache配置启用HSTS

韩小韩
2020-02-25 / 1 评论 / 1,047 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2020年02月25日,已超过1494天没有更新,若内容或图片失效,请留言反馈。

虚拟主机中Apache配置启用HSTS

现在给网站启用ssl的站长越来越多了,谷歌也逐步将http访问设置为不安全,不开ssl感觉会对用户造成一种假象,没有ssl就是不安全的网站。所以小站也在很久之前就部署了ssl证书。

问题过程

晚上网友“心有猛虎”说他网站怎么是T,我就用检测工具简单检测了一下,果然是最差的T等级,我想不应该啊,就刷新重新检测,果然恢复到A了,应该是检测工具没刷新问题。
虚拟主机中Apache配置启用HSTS

弄到这里我就看了一下我的网站,也是A,这时候我的处女座强迫症犯了,为什么不搞到A+呢?(A+需要配置HSTS)以前也搞过,不过那个时候用的是独立服务器,环境是Nginx配置几行代码就能实现,现在转到虚拟主机,还能不能配置,经过使用搜索工具,终于找到了虚拟主机配置。

解决方案

.htaccess中添加配置就可以实现。

RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L,E=HTTPS:1]
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS

核心代码是最后一句,前面的作用是需将将非https重定向到https。并使用HSTS标头将非www https重定向到www https。

所以我网站的.htaccess中添加最后一行代码Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS就实现了。再来检测一下。果然实现了A+.
虚拟主机中Apache配置启用HSTS

转自 青衫慧博客

0

评论 (1)

取消
  1. 头像
    化身恩佐
    Windows 10 Windows 10 / QQ 浏览器 QQ 浏览器 中国浙江省金华市奇虎360电信节点

    整挺好!!!

    回复