当我调试Visual Studio项目使用Chrome浏览器尝试重定向到https相当于我的web地址。我没有在web项目中启用SSL,并且开始URL是http URL。当我使用FireFox或IE进行调试时,我没有这个问题。

我重新安装了Chrome浏览器,解决了这个问题一天。没有下载任何插件的问题再次发生了第二天。

什么是使Chrome重定向localhost到https?

网络巡检显示: 请求URL:数据:text / html, chromewebdata 请求头 显示临时标题 User-Agent:Mozilla/5.0 (Windows NT 6.3;WOW64) AppleWebKit/537.36 (KHTML,像Gecko) Chrome/36.0.1985.143 Safari/537.36

这些选项卡中没有预览和响应数据。


当前回答

The issue could be replicated in VS 2019 also. This is caused due to "Enable Javascript debugging from Visual Studio IDE". The VS attaches to Chrome and it is a possibility that due to security or reasons known to Google and Microsoft, it sometimes fails to attach and you have this issue. I am able to run http and https with localhost from ASP net core 3.1 app. So while debugging in VS, go to the run with arrow -> IIS express, just below "Web Browser(Chrome)" select "Script Debugging (Disabled)".

参见文章:https://devblogs.microsoft.com/aspnet/client-side-debugging-of-asp-net-projects-in-google-chrome/

https://learn.microsoft.com/en-us/visualstudio/debugger/debugging-web-applications?view=vs-2019

总是退回到微软文档,以获得比谷歌更清楚的问题。

其他回答

结果这个错误消息把我送进了兔子洞。

对我来说,问题是我试图在http上加载的页面未能返回响应(由于我的代码中的一个错误导致服务器崩溃)。

Chrome自动尝试https自动作为备份,而不是看到实际的错误(页面超时),我看到SSL错误,这是一个红鲱鱼。

修复底层服务器崩溃&导航回http://localhost:5000修复了我的问题。

如果你碰巧在Wordpress网站上工作,在尝试了这个页面上的所有内容后,http://127.0.0.1/wp-admin仍然被重定向到https://127.0.0.1/wp-admin。试试这个:

进入wp-config.php并替换

定义(' WP_HOME ', ' https://example.com ');

define('WP_SITEURL','https://example.com');

to

定义(' WP_HOME ', ' http://127.0.0.1 ');

define('WP_SITEURL','http://127.0.0.1');

在Chrome和Firefox上测试。

@Adiyat Mubarak的回答对我没用。当我试图清除缓存并重新加载时,页面仍然重定向到https。

我的解决方案是:在url栏的右上角(就在收藏夹星形图标的左边)有一个带有“x”的图标。右键单击它,它会显示一些关于“不安全脚本”的内容,然后有一个选项可以加载它们。这样做。

我相信这是由HSTS引起的-见http://en.wikipedia.org/wiki/HTTP_Strict_Transport_Security

如果你有(开发)任何其他发送HSTS头的本地主机站点…

例如:Strict-Transport-Security: max-age=31536000;includeSubDomains;预加载

... 然后根据max-age的值,未来对localhost的请求将需要通过HTTPS服务。

为了解决这个问题,我做了以下工作。

在Chrome地址栏输入以下内容: chrome: / / net-internals / # hst 在页面的最底部有一个QUERY域文本框-验证浏览器是否知道localhost。如果它说“未找到”,那么这不是你要寻找的答案。 如果是,使用上面的文本框删除localhost域 您的站点现在应该使用普通的旧HTTP工作

这不是一个永久的解决方案,但至少可以让它在项目之间工作。如果有人知道如何从HSTS列表中永久排除localhost,请让我知道:)


更新- 2017年11月

Chrome最近把这个设置移到了这个部分下面

删除域安全策略


更新- 2017年12月

如果您正在使用。dev域,请参阅下面的其他答案,因为Chrome(和其他)通过预加载的HSTS强制HTTPS。

对我来说,下面的操作在Chrome 90中是有效的。我的应用程序在localhost:3000上打开了一个本地webpack服务器,自动重定向到HTTPS,我得到了ERR_SSL_PROTOCOL_ERROR。

我点击URL旁边的小信息图标,从菜单下拉菜单打开网站设置。在列表中,“不安全”内容被设置为“阻止”(默认值)。

我把这个改为允许,只是重新加载http版本,它加载正常。

希望这能帮助到人们。