gpt4 book ai didi

c# - 无法连接到网络服务器 'IIS Express'

转载 作者:行者123 更新时间:2023-12-02 12:19:54 26 4
gpt4 key购买 nike

我正在使用 Microsoft Visual Studio 2019 社区预览版 16.4.0 预览版 1.0。我刚刚更新到 Windows 10 专业版 1903 操作系统版本 18362.418 。使用 ASP.NET Core 3 Web 应用程序项目(Blazor 服务器),当我按 F5 时,我捕获错误

我可以去https://localhost:44333/手动,但不方便。当我停止调试时,我也会在任务栏手动关闭它。

对于另一个网络应用程序项目,问题不会发生。

当我选择或不选择选项启用 native 代码调试时,都没有成功。

如何解决?

最佳答案

启用/禁用 SSL

这是一个简单的解决方法。对我来说,在 Visual Studio 内的项目“调试”选项卡中切换“启用 SSL”设置(只需将其更改为与当前设置相反的值并运行项目)已解决了该问题。

据我了解,这可能有效的原因有两个。首先,它会导致 Visual Studio 更新应用程序主机配置(稍后会详细介绍)。其次,有时SSL地址是绑定(bind)的。因此禁用 SSL 可以解决该问题。

应用程序主机配置

打开您的 $(solutionDir)\.vs\config\applicationhost.config 文件并确保您的网站如下所示:

<site name="[YOUR PROJECT NAME]" id="3">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="//PATH/TO/YOUR PROJECT" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:[YOUR_PORT]:localhost" />
<binding protocol="https" bindingInformation="*:[YOUR_SSL_PORT]:localhost" />
</bindings>
</site>

确保 iplisten 配置为 0.0.0.0

如果没有配置IP监听列表,可能会出现这个问题(小心,我不知道为什么)。

检查 netsh 以确保有 0.0.0.0 的条目

PS C:\Windows\system32> netsh http show iplisten

IP addresses present in the IP listen list:
-------------------------------------------

::
0.0.0.0

PS C:\Windows\system32>

如果不存在,请添加正确的 netsh 规则。 为此,您需要一个管理员 cmd.exe 或管理员 PowerShell。

PS C:\Windows\system32> netsh http add iplisten ipaddress=0.0.0.0

确保没有任何内容与您正在使用的地址绑定(bind)

这对我来说似乎是 Blazor 的问题。如果地址绑定(bind)到 Blazor 尝试使用的地址,这可能会导致问题。再次使用 netsh 检查正在使用的内容。

netsh http show urlacl

类似这样的条目

Reserved URL            : http://*:50902/
User: \Everyone
Listen: Yes
Delegate: No
SDDL: D:(A;;GX;;;WD)

可以用此命令删除

netsh http del urlacl url=http://*:50902/

关于c# - 无法连接到网络服务器 'IIS Express',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58346617/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com