.NET Web服务 - 主机名解析不正确

时间:2009-05-31 04:56:59

标签: c# .net asp.net web-services asmx

重复:这是完全相同的问题,来自完全相同的人,Issue with Incorrect URLs in the WSDL of a .NET Web Service,并且具有完全相同的答案。我们请关闭它并将其与另一个合并。


我们在客户端的服务器上安装了一个ASP.NET网站。此站点有一个Web服务,其中包含一些由Flash对象调用以显示新闻源的Web方法。如果你浏览他们的网站(例如:www.domain.com),除闪光灯外一切正常。

问题在于,当我们浏览.asmx时,标题显示主机是其网络内部的子域(internal.domain.com)。显然,当从网络外部浏览时,这不会解析为任何公共IP。这会导致Flash失败,因为Flash对象嵌入在页面上,因此正在运行客户端。

我检查了有问题的服务器上的计算机名称,它甚至不匹配“internal.domain.com” - 它完全不同。从哪里获取这些信息。它不是来自IIS,因为我们没有设置主机头,并且站点的IP设置为(全部未分配)。

我们要么强制Web服务针对特定主机运行,要么我们需要更改服务器上的某些内容,以便它解析为有效的面向公众的主机名。非常感谢任何和所有帮助!!!!

2 个答案:

答案 0 :(得分:0)

Web服务主机名通常在被.NET使用时在web.config中配置。当他们被闪存消耗时,您可能需要查看Flash文件。 (我的猜测是它仍然配置为某种SIT环境。

答案 1 :(得分:0)

我不确定这个细节,但我看到了关于WCF的这个抱怨。答案与在IIS中设置主机头有关。

IIS将主机名传递给ASP.NET或WCF,并在配置主机头时传递主机头。如果没有配置,那么我认为它不会将该标头作为“主机名”发送,即使客户端在请求中设置了该标头。