chrome 307状态码

问题:不知道什么原因导致http请求chrome始终307跳转到https,这个307的跳转非常恶心的地方是客户端缓存行为,并且非普通的f12下面清除缓存可以去掉

解决办法:使用chrome的清除浏览数据,通过这个方式清除,才能解决。

问题根因:我nginx在配置https的时候使用了

add_header Strict-Transport-Security "max-age=315360000; includeSubdomains";

这样一句配置,触发了客户端HSTS策略

HTTP严格传输安全(英語:HTTP Strict Transport Security,縮寫:HSTS)是一套由互联网工程任务组发布的互联网安全策略机制。网站可以选择使用HSTS策略,来让浏览器强制使用HTTPS与网站进行通信,以减少会话劫持风险。

307就是这个策略导致,这个策略的客户端处理感觉是有bug,按描述他是为了安全,会把一个http请求强制变成https,但如果我本身只是想把原来的81端口http请求转到443来,结果他给我强制把http://xx:81变成https://xx:81 ,81不可能同时支持http和https,所以触发后很麻烦,对已经影响的客户端服务端这边无能为力,要非常小心才行

其他:

由于笔者一开始使用的是81端口,所以这个问题影响比较大,如果是使用80端口,则即使触发该策略也能正确跳到443,无论80端口是否显式写在url。

相关推荐
yqcoder20 分钟前
NPM 包管理问题汇总
前端·npm·node.js
程序菜鸟营26 分钟前
nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置)
前端·npm·node.js
bsr198337 分钟前
前端路由的hash模式和history模式
前端·history·hash·路由模式
杨过姑父1 小时前
ES6 简单练习笔记--变量申明
前端·笔记·es6
Sunny_lxm1 小时前
<keep-alive> <component ></component> </keep-alive>缓存的组件实现组件,实现组件切换时每次都执行指定方法
前端·缓存·component·active
咔咔库奇2 小时前
【TypeScript】命名空间、模块、声明文件
前端·javascript·typescript
兩尛3 小时前
订单状态定时处理、来单提醒和客户催单(day10)
java·前端·数据库
又迷茫了3 小时前
vue + element-ui 组件样式缺失导致没有效果
前端·javascript·vue.js
哇哦Q3 小时前
原生HTML集合
前端·javascript·html
SoWhat~3 小时前
随遇随记篇
前端·javascript