Google Chrome将localhost重定向到https
当我使用Chrome调试Visual Studio项目时,浏览器尝试重定向到我的Web地址的https等效项。 我在Web项目中没有启用SSL,并且起始URL是http URL。 当我使用FireFox或IE进行调试时,我没有这个问题。
我确实重新安装了Chrome,可以解决一天的问题。 在没有下载任何插件的情况下,第二天再次发生问题。
什么使Chrome浏览器将本地主机重定向到https?
用户代理:Mozilla / 5.0(Windows NT 6.3; WOW64)AppleWebKit / 537.36(KHTML,如Gecko)Chrome / 36.0.1985.143 Safari / 537.36
这些标签中没有预览和响应数据。
我相信这是由HSTS引起的 - 请参阅http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security
如果您有(开发)任何其他发送HSTS标头的本地主机站点......
例如。 Strict-Transport-Security:max-age = 31536000; includeSubDomains; 预紧
...然后取决于max-age的值,未来对本地主机的请求将需要通过HTTPS提供。
为了解决这个问题,我做了以下工作。
这不是一个永久的解决方案,但至少可以让它在项目之间工作。 如果有人知道如何从HSTS列表中永久排除localhost,请让我知道:)
更新 - 2017年11月
Chrome最近将此设置移至“ 删除域安全策略”下
UPDATE - 2017年12月如果您使用的是.dev域名,请参阅下面的其他答案,因为Chrome(和其他人)通过预加载的HSTS强制使用HTTPS。
我在Chrome中遇到了同样的问题,我尝试使用BigJump的解决方案失败。
我通过强制刷新解决了我的问题,如本博客中所示(最初来自此超级用户答案)。
确保您的地址栏使用http方案,然后再执行这些步骤,可能需要几次:
新的发展! (如果你有Chrome 63+)
如果你的localhost域名是.dev
那么我认为先前接受的工作答案不再适用。 这是因为Chrome 63 Chrome会通过预加载的HSTS将.dev域强制转换为HTTPS。
这意味着什么, .dev
基本上根本不会工作,除非你有正确的签名SSL证书 - 不允许更多的自签名证书! 通过此博客文章了解更多信息。
所以现在就解决这个问题,以避免将来再次发生这种情况.test
是一个推荐的域名,因为它被IETF保留用于测试/ dev目的。 你也应该能够使用本地开发的.localhost
。
上一篇: Google Chrome redirecting localhost to https
下一篇: CoffeeScript source maps loaded but sources not fetched by Chrome