【问题标题】:Why does 'localhost' in web references cause SocketExceptions?为什么 Web 引用中的 'localhost' 会导致 SocketExceptions?
【发布时间】:2010-03-24 11:19:53
【问题描述】:

我有两个使用 SSL 部署到同一个 IIS 服务器的 .net Web 服务,一个引用另一个。

如果我将该 Web 引用设置为“localhost”,则某些调用会失败并出现以下异常:

System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.Net.WebException:无法连接到远程服务器 ---> System.Net.Sockets.SocketException: 无法建立连接,因为目标机器主动拒绝了它

如果我将它设置为实际的机器名称,它可以工作。

为什么?

【问题讨论】:

    标签: .net web-services deployment localhost socketexception


    【解决方案1】:

    我怀疑您会发现 IIS 被配置为侦听“真实”网络接口上的请求,而不是环回适配器上的请求。

    您应该能够使用普通浏览器看到这一点 - 尝试转到框上的 https://localhost 看看会发生什么。

    【讨论】:

    • 奇怪的是我可以用浏览器导航,只是服务间调用可能会失败。
    • 可能与尚未为 localhost 设置的特定权限(例如,对于特定帐户)有关。
    【解决方案2】:

    127.0.0.1 可能可以解决问题。为什么?我不知道——从实验中得到。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-21
      • 2020-05-26
      • 1970-01-01
      • 1970-01-01
      • 2016-09-11
      • 1970-01-01
      相关资源
      最近更新 更多