案例背景:
用户在控制台打开HSTS功能,然后进行http访问,多次访问也不会跳转为https,认为不生效,客户是和阿里一样的配置
问题原因:
HSTS功能,浏览器只对https请求生效
原因分析:
hsts功能解释:通过强制客户端(浏览器等)使用 HTTPS 与服务器创建链接,帮助网站进行全局加密。
浏览器在最近一次的https的请求如果有strict-transport-security响应头则会将请求的域名加入他的HSTS缓存列表
注意非加密传输时设置的HSTS字段无效,也就是http请求即使有strict-transport-security响应头也是无效的
用户在阿里配置如图
如图可看出用户的跳转类型是默认,即不跳转,HSTS功能开启状态
测试访问时发现实际有301跳转,用户访问了https之后浏览器将域名加入了HSTS缓存
而腾讯云在只开启HSTS功能时,腾讯云只响应strict-transport-security头,并没有跳转,因此导致请求http并不会触发浏览器将域名加入HSTS缓存列表中
解决方法
该功能配合强制跳转功能使用,开启跳转配置,将http请求跳转为https请求即可
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。