gpt4 book ai didi

ipv6 - IIS Express 无法在具有 ipv6 的本地主机上启动

转载 作者:行者123 更新时间:2023-12-01 23:52:06 26 4
gpt4 key购买 nike

各位 Stackoverflow 用户,您好!

这是发生在我身上的一些有趣的事情 - 也许你可以解释为什么?

昨天工作日过半时,我安装的 IIS Express 停止工作了。

一开始我以为是我正在做的ASP.NET项目的问题,只是挂起而无法启动,因为页面一直挂着直到超时。然后我尝试了一些其他项目,也设置为在 localhost:8080 上运行 - 他们也不会加载 - 即使是纯 HTML 项目。

现在,当我说它们不会加载时;我的意思是根本没有事件。该页面会在 chrome 中“加载”很长时间,并且 IISExpress 控制台不会注册任何 GET 请求,直到最终 chrome 中的选项卡会显示超时错误。

今天早上,我(在一些帮助下)想出了一些办法 - 由于某种原因,当我 ping localhost 时,ipv6 地址 ::1: 将返回,而不是 ipv4地址 127.0.0.1 - 我之前没有注意到此行为,并且我没有更改任何网络设置。

我编辑了 HOST 文件,并添加了 127.0.0.1 localhost 条目,以强制 ping localhost 返回 ipv4 地址。这有效,当我再次尝试将 IIS Express 绑定(bind)到 localhost:8080 时,它也有效。

我的问题是到底是什么?!?!

我不知道为什么会发生这种情况。我知道我已经通过编辑 HOST 文件成功解决了个别问题,但有谁知道为什么会发生这种情况?

知道为什么 ping localhost 会突然开始返回 ipv6 地址吗?知道为什么 IIS Express 不能与 ipv6 一起工作吗? (我假设 IIS 引擎现在已经内置了)。

出于好奇,我想了解发生了什么,以避免出现任何进一步的问题。

预先感谢您提供任何信息,

菲尔

最佳答案

  • 打开管理 cmd 窗口,然后使用您绑定(bind)到的端口执行此命令:netsh http add urlacl url="http://[::1]:8080/" user=everyone 。这告诉您的系统绑定(bind)到 ::1 很酷
  • 打开%USERPROFILE%\Documents\IISExpress\config\applicationhost.config ,找到您站点的部分,然后添加 IPv6 绑定(bind): <binding protocol="http" bindingInformation="[::1]:8080:*" />

示例:

<site name="WebSite1" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="C:\Users\ryan.versaw\Documents\WebSite1" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:8080:localhost" />
<binding protocol="http" bindingInformation="[::1]:8080:*" />
</bindings>
</site>

关于ipv6 - IIS Express 无法在具有 ipv6 的本地主机上启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11097936/

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