【发布时间】:2012-07-30 18:11:20
【问题描述】:
我有一台服务器在一个 IP 下为多个网站提供服务,并绑定到特定的 URL。
但是,我托管的其中一个站点需要从位于同一服务器上的另一个 IIS 网站中的 Web 服务(.asmx 文件)中提取数据。代码在本地运行良好,但是当我们将代码推送到服务器时,似乎无法在本地解析查找。 (得到可怕的“无法建立连接,因为目标机器主动拒绝了它”。我认为正在发生的事情是它尝试使用端点地址并进行 DNS 查找,但是因为 DNS 查找最终解析为相同的 IP,它实际上是通过内存或管道或其他东西而不是网络来吸引流量,这导致 IIS 无法绑定到正确的站点,因此整个事情都陷入困境。
有没有办法可以使用 Windows 主机文件或其他机制来解决这个明显的 DNS 问题?也许有人可能会对此有所了解,也许根本就不是 DNS。谢谢!
更新 - 以下是相关域的快速细分。没有什么特别编码或指向“本地主机”。一切都在使用完全限定的域名。
DomainA.com 是一个网站,当提交表单时,它会从 DomainB.com 调用 Web 服务。 DomainA.com 和 DomainB.com 都是在绑定到相同外部 IP 地址的同一服务器上的 IIS 中设置的“网站”。我相信的问题是 DomainA.com 在提交表单时会对 DomainB.com 进行 DNS 查找,当它发现域是相同的 IP 地址时,不会向 DomainB.com 发出请求时使用域名。如果没有使用/发送域名,IIS 不知道要连接到哪个站点,并且“目标计算机会主动拒绝”连接。
【问题讨论】:
-
很可能您正在通过本地地址(即 localhost)访问位于第二个 IIS 中的 Web 服务。尝试使用外部 DNS 名称或在 IIS 管理器中添加 localhost 绑定。
-
抱歉拉曼,事实并非如此。我使用的是完全限定的 URL。
-
不,这些都没有使用 SSL,马修。
-
你解决过这个问题吗?我有类似的问题
标签: c# web-services iis dns