IIS 拒绝连接 localhost 和 127.0.0.1

IIS 拒绝连接 localhost 和 127.0.0.1

我无法在我的其中一台机器上连接到 localhost 和 http:// 127.0.0.1。但是http://machinename可以。

这导致 Windows 令牌应用程序无法颁发令牌,因为它无法连接。

事件日志中显示了以下内容:

Request for security token failed with exception: 
System.ServiceModel.EndpointNotFoundException: Could not connect to 
http:// localhost : 32843/SecurityTokenServiceApplication/securitytoken.svc/actas. 
TCP error code 10061: No connection could be made because the target machine actively 
refused it 127.0.0.1:32843

我可以 ping 到本地主机:

Reply from ::1: time<1ms
Reply from ::1: time<1ms
Reply from ::1: time<1ms
Reply from ::1: time<1ms

127.0.0.1 也类似

Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128
Reply from 127.0.0.1: bytes=32 time<1ms TTL=128

Hosts 文件未被改变并且其中没有活动条目。

在 Powershell 中发出netstat -ao | findstr LISTENING命令后,我发现了以下 2 个条目:

TCP 172.16.2.187:32843 机器:0 正在监听 4 TCP 172.16.2.187:32844 机器:0 正在监听 4

看起来不错,表明服务已启动并正在运行。此外,每个应用程序池都已启动,网站正在运行,也可以从外部访问(请参阅我们的 LAN)。

如果您需要更多信息,请在评论中提出,我会将其添加到此帖子中。

请帮助我找到错误配置。此致。

答案1

我遇到过同样的问题,但 localhost 可以工作,因为 ::1 地址和网络 ip 都在监听。这个命令对我有帮助

netsh http add iplisten 127.0.0.1

答案2

TCP 172.16.2.187:32843 机器:0 正在监听 4 TCP 172.16.2.187:32844 机器:0 正在监听 4

您的服务仅绑定在环回地址上( , ) 172.16.2.187,而不绑定到环回地址。您需要重新配置 IIS 以侦听您选择的环回地址(IPv4 或 IPv6),或根据需要侦听所有可用地址( )。127.0.0.1::1:0.0.0.0

答案3

这是一个老案例了,但我想把我的经历记录下来,希望将来能对别人有所帮助。

我当时正在开发一个系统,其中手持设备上的代码与本地开发 PC 上的 Web 服务进行通信。手持设备从 Web 服务收到 HTTP 错误请求响应,因此我安装了 Fiddler 以查看是否可以识别问题。它运行正常,问题已解决。

但是后来我发现,一旦我删除了 Fiddler 并清除了它添加的代理设置,我就无法再使用http://192.168.0.192这是我的本地 IP。但是 http://localhost 确实有效,这意味着 IIS 正在运行。

这让我思考了一个星期,直到我发现了一个建议

netsh http delete iplisten ipaddress=127.0.0.1

突然http://192.168.0.192又能正常工作了,但现在 http://localhost 不起作用了。进一步的搜索建议我尝试

netsh http add iplisten 127.0.0.1

虽然这似乎与我之前所做的相反,但我尝试了它,现在两者http://192.168.0.192并且 http://localhost 工作正常

感谢所有向我尝试过建议的人。

相关内容