我运行了一些WCF服务(分别位于各自的Web目录中),它们都驻留在同一台计算机上。其中一些服务是通过内部网络上的计算机在本地访问的,而某些则是通过WAN通过其他服务器在外部访问的。
这只是简单的BasicHttpBinding。
上个星期没有任何变化,但是在上个星期我一直收到此消息,并且来自不同的WCF服务。
防火墙,我认为这不是问题。变化是突然的,看似随机的。这些服务已经运行了3-4年没有问题。
有什么想法吗?
其中一条消息:
System.Net.Sockets.SocketException(0x80004005):无法建立连接,因为目标计算机主动拒绝了它xxx.xx.xxx.xxx 在System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot,SocketAddress socketAddress) 在System.Net.ServicePoint.ConnectSocketInternal处(布尔connectFailure,Socket s4,Socket s6,Socket&套接字,IPAddress&地址,ConnectSocketState状态,IAsyncResult asyncResult,Exception&exception)
我也得到的其他消息是没有侦听终结点的终结点可以接受该消息。这通常是由于SOAP操作地址不正确引起的。有关更多详细信息,请参见InnerException
当我尝试将其加载到浏览器(http://IP/Service/service.svc)中时,在这些情节之一期间,将无法加载页面。不幸的是,我不记得浏览器在显示什么,但是奇怪的是,在显示错误消息后,它变得很好,然后就出现了服务参考页面。
Windows 7 IIS 建议表示赞赏。
web.config(开箱即用,从未真正更改过)
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="ConnectionString" value="bla"/>
</appSettings>
<system.web>
<compilation debug="false" targetFramework="4.0">
<assemblies>
<add assembly="System.Runtime.Caching, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
</assemblies>
</compilation>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>