如何禁用Chrome的HTTP重定向?配置hosts后跳转问题求助
解决Chrome对dev域名的强制HTTP/HTTPS重定向问题
我猜你应该是遇到Chrome自动把dev:5000/some/path重定向到https://dev:5000/some/path的问题吧?毕竟你提到的Stack Overflow方案是针对HTTPS强制跳转的,可能是输入时的小疏漏。下面给你几个更针对性的解决办法,试试能不能搞定:
1. 清除Chrome的HSTS缓存
Chrome会给部分域名存储HSTS(HTTP严格传输安全)规则,强制浏览器走HTTPS。你可以手动清除dev域名的相关记录:
- 在Chrome地址栏输入
chrome://net-internals/#hsts - 找到Delete domain security policies区域
- 输入框里填
dev,点击Delete按钮 - 重启Chrome后再访问测试
2. 调整Chrome的本地安全策略
Chrome有针对本地域名的自动HTTPS升级机制,你可以关闭这个功能:
- 打开
chrome://flags/#allow-insecure-localhost,将选项设置为Enabled - 再打开
chrome://flags/#force-https-upgrades,设置为Disabled - 重启Chrome使设置生效
3. 排查VM内服务的重定向配置
有时候重定向不是浏览器的锅,而是VM里的Web服务本身在发送重定向响应:
- 检查服务的配置文件(比如Nginx、Apache,或者你用的应用框架配置),有没有强制HTTPS的规则
- 查看应用代码里是否有手动判断请求协议后跳转的逻辑
4. 用隐身模式排查缓存/扩展干扰
如果上面的方法都没用,试试Chrome的隐身窗口访问dev:5000/some/path——隐身模式不会加载缓存的HSTS记录和第三方扩展,能帮你快速定位问题:
- 如果隐身模式正常,那就是普通模式下的缓存或某个扩展导致的,你可以清除Chrome的全部缓存(快捷键
Ctrl+Shift+Delete),或者逐个禁用扩展排查 - 如果隐身模式也有问题,那大概率是系统级或服务端的配置问题
另外,你之前试过的方案没用,可能是因为dev不在Chrome默认的“本地信任域名”列表里。试试把/etc/hosts里的dev改成dev.local或dev.test这类带后缀的域名,再重新访问,Chrome对这类域名的安全策略会宽松一些。
内容的提问来源于stack exchange,提问作者kurupt_89
相关产品推荐
相关产品推荐

