@zuohuadong
2017-01-04T10:23:15.000000Z
字数 629
阅读 580
UPYUN
SSL Test 地址: SSL labs
在UPYUN 申请完SSL 的时候,然后测试,结果应该是A。如图:

为什么不是A+呢?
我们看下面HSTS部分:

可以看到HSTS是没有开启的。
先解释下HSTS是干嘛的吧,简单说,如果在HTTPS里开启HSTS,用户浏览器只要访问过一次,那么下次这个网址的HTTP网址时,浏览器会直接强制跳转到HTTPS,这个是在浏览器层实现的,所以可以避免被挟持。
目前主流浏览器除了IE以外均支持。
在UPYUN中如何开启HSTS
我们打开【高级功能】——【自定义Rewrite】
添加规则【Rewrite规则】里加入:
$ADD_RSP_HEADER(Strict-Transport-Security,'max-age=31536000; includeSubDomains; preload')
并且关闭【break】和【调试模式】 如图:(此规则建议放在第一条)

好了,点【保存】就大功告成了!
创建更安全的HSTS
HSTS其实是建立在用户第一次已经访问到网站的情况下,大多数用户点击 www.website.com 这样的网站其实默认还是HTTP,如果在第一次访问到HTTP这一层就已经被挟持的话,是没有后续跳转的,这样我们可以通过HSTS预加载列表实现。HSTS list
值得注意的是,即使审核通过,也需要很久才能生效,而且往后用户访问该网址的HTTP都会被浏览器强制跳转到HTTPS。