2017-08-04 1 views
0

Ich habe WCF-Dienst, der als Windows-Dienst funktioniert. Service funktioniert gut, getestet mit mehr als 100 Clients. Aber eine Maschine funktioniert nur auf localhost. Der Dienst wird auf Windows Server 2012 R2 gehostet. Bild von 'netstat' hinzufügen. Auf einem ähnlichen funktionierenden Server hört der Dienst '0.0.0.0:88' ab.WCF-Dienst hört nur localhost (127.0.0.1)

versucht, verschiedene Endpunkte '0.0.0.0:88/MyService.svc', '198.x.x.x: 88/MyService.svc', 'Host-Name: 88/MyService.svc' arbeiten alle localy nur.

Service-config:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
    <appSettings> 
    <add key="connectionString" value="xxxxx"/> 
    </appSettings> 
    <connectionStrings>  
    </connectionStrings> 
    <system.serviceModel> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="BehaviourService"> 
      <serviceMetadata httpGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <bindings> 
     <basicHttpBinding> 
     <binding name="FvsBasicHttp" receiveTimeout="00:20:00" sendTimeout="00:20:00" openTimeout="00:20:00" closeTimeout="00:20:00" 
       maxBufferSize="2147483647" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> 
      <readerQuotas maxArrayLength="2147483647" maxStringContentLength="2147483647" maxDepth="32" maxBytesPerRead="2147483647"/> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 
    <services> 
     <service name="FvsWebServiceWcf.FvsService" behaviorConfiguration="BehaviourService" > 
     <endpoint name="FvsService" address ="" binding="basicHttpBinding" bindingConfiguration="FvsBasicHttp" contract="FvsWebServiceWcf.IFvsService"></endpoint> 
     <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/> 
     <host> 
      <baseAddresses> 
      <add baseAddress="http://195.x.x.x:88/MyService.asmx"/> 
      </baseAddresses> 
     </host> 
     </service> 
    </services> 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" /> 
    </system.serviceModel> 
</configuration> 
+0

dann zeigen Sie die Konfiguration Ihres WCF-Service – BugFinder

Antwort

1

Mögliche Vermutung: Jemand verwirrte die Maschine von HTTP.SYS Einstellung nur auf der lokalen Host-Schnittstelle zu hören. Sie können dies überprüfen, indem Sie den Befehl ausführen:

netsh.exe http show iplisten

Wenn es 127.0.0.1 zurückkehrt, wie erwartet, müssen Sie wahrscheinlich den Eintrag mit (netsh.exe http delete iplisten ipaddress=127.0.0.1) entfernen. Nicht sicher, ob Sie erneut 0.0.0.0 hinzufügen müssen, um es wieder zu verwenden.

+1

tomasr vielen Dank, meinen Tag gerettet. Befehle: "netsh http add iplisten ipadresse = 0.0.0.0" und "netsh http löschen iplisten ipaddress = 127.0.0.1" – Ramunas

Verwandte Themen