您好 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 绑定到 localhost:8080 时,它也有效。
我的问题是;到底怎么回事?!?!
我不知道为什么会这样。我知道我已经通过编辑我的 HOST 文件设法解决了个别问题,但是有谁知道到底为什么会发生这种情况?
知道为什么ping localhost
会突然开始返回 ipv6 地址吗?知道为什么 IIS Express 不能与 ipv6 一起使用吗?(我假设 IIS 引擎现在已经包含了它)。
我想了解发生了什么以避免任何进一步的问题,并且出于好奇。
在此先感谢您的任何信息,
菲尔