Visual Studio 2017 强制站点通过 https 加载,即使禁用了 ssl (Dotnet core 2.2)
Posted
技术标签:
【中文标题】Visual Studio 2017 强制站点通过 https 加载,即使禁用了 ssl (Dotnet core 2.2)【英文标题】:Visual Studio 2017 forces sites to load via https, even though ssl is disabled (Dotnet core 2.2) 【发布时间】:2019-10-24 11:46:36 【问题描述】:出于某种原因,Visual Studio 2017(版本 15.9.12)拒绝以非 ssl 加载 ASP.Net Dotnet Core 2.2 页面。即使未选中 Enable SSL 并且启动浏览器路径设置为 http://localhost:15777(或者对于 Kestrel,它已设置),它也会自动将 s 附加到 http,如 https://localhost:15777 http://localhost:55333)。
launchSettings.json 文件如下所示(如您所见,它设置正确,但完全被忽略)。
"iisSettings":
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress":
"applicationUrl": "http://localhost:15777",
"sslPort": 0
,
"profiles":
"IIS Express":
"commandName": "IISExpress",
"launchBrowser": true,
"launchUrl": "http://localhost:15777",
"environmentVariables":
"ASPNETCORE_ENVIRONMENT": "Development"
,
"Nop.Web":
"commandName": "Project",
"launchBrowser": true,
"environmentVariables":
"ASPNETCORE_ENVIRONMENT": "Development"
,
"applicationUrl": "http://localhost:55333"
这个,一周前没有这样做,我到处搜索帖子寻找答案。显然,某处存在错误,因此我正在寻找一种方法来使 Visual Studio、IIS Express 或 Kestrel 像预期的那样工作。 有什么想法吗?
【问题讨论】:
ASP.NET Core 2.1 + Kestrel (How to disable HTTPS)的可能重复 我看到了,但是对于 Core 2.2,一切都变了。仍在试图弄明白为什么 Core 2.2 如此糟糕 - 以前从未遇到过如此荒谬的问题。 “一切都改变了”是模糊的。该线程有几个即使对 3.0 也有效的答案(例如.UseUrls("http://localhost:5000")
)。
【参考方案1】:
它与视觉工作室无关。
您必须删除 Startup.cs 文件中的app.UseHttpsRedirecttion();
另外,您可以运行您的 Release 并且由于 app.UseHsts()
它会重定向到 https 直到它的时间到期。
尝试清除浏览器安全缓存。
你可以去chrome://net-internals/#hsts
清除hsts安全缓存并删除你想要的地址。
【讨论】:
根本不在 Startup.cs 中使用它。这是 dotnet core 2.2 管道中的默认行为吗? 我完全删除了 VS2017,然后安装了 VS2019 并获得了相同的行为。 https - 不......没关系......什么。它没有在任何地方定义 - 我对网址进行了硬编码,它坚持这样做。那么,它不是 VS,而是 Kestrel 中的错误/功能?使用 Core 2.2.3 SDK.UseHttpsRedirection
现在是 2.2 中 .CreateDefaultBuilder
的一部分,所以这个答案本身是无效的。
我不相信它是 asp.net 核心的一部分。我尝试使用 ver 3.0-preview5 并且没有问题。
尝试清除我刚刚添加到答案中的 HSTS 安全缓存。希望能解决您的问题。如果您不想清除 hsts 缓存,也可以尝试使用其他浏览器以上是关于Visual Studio 2017 强制站点通过 https 加载,即使禁用了 ssl (Dotnet core 2.2)的主要内容,如果未能解决你的问题,请参考以下文章
无法再从 Visual Studio 为 .NET 项目运行 localhost 调试站点
Visual Studio Docker Tools如何从头开始强制容器重建
如何在 Visual Studio 2017 中使用 Qt 库?
如何防止Visual Studio 2017添加对NugetFallbackFolder的引用