我有一个服务器服务于一个IP下的多个网站,并绑定在特定的URL上。
但是,我托管的其中一个站点需要从位于同一服务器上的另一个IIS网站中的webservice (.asmx文件)中提取数据。代码在本地运行良好,但当我们将代码推送到服务器时,似乎无法在本地解析查找。(得到可怕的‘无法连接,因为目标机器主动拒绝它’。我认为它正在尝试使用端点地址并进行DNS查找,但是由于DNS查找最终解析到同一个IP,它实际上通过内存中的、管道之类的东西来吸引流量,而不是网络,这导致IIS没有绑定到正确的站点,所以整个事情就陷入了困境。
我是否可以使用windows主机文件或其他机制来解决这个明显的DNS问题?也许有人会澄清这一点,也许它根本就不是DNS。谢谢!
更新-这是一个有关领域的快速细分。没有什么是专门编码或指向“localhost”的。每个人都在使用完全限定的域名。
DomainA.com是一个在提交表单时从DomainB.com调用web服务的网站。DomainA.com和DomainB.com都是在IIS中设置的“网站”,它们位于同一个服务器上,绑定到同一个外部IP地址。我认为问题在于,当表单提交时,DomainA.com对DomainB.com进行DNS查找,当它发现域是相同的IP地址时,在向DomainB.com发出请求时不使用域名。如果没有使用/发送域名,IIS就不知道要连接到哪个站点,并且“目标机器主动拒绝”连接。
发布于 2012-08-01 19:37:54
您是否必须在配置文件中定位到您的webservice?
看看您生成的用于使用它的代理类。主机通常被硬编码到该文件中。
如果您没有使用生产主机创建该文件(或服务引用),它将指向您的开发webservice。这将无法从您的生产机器访问。
https://stackoverflow.com/questions/11766171
复制相似问题