Лучший отвечающий
WCF служба не принимает подключения

Вопрос
-
Есть служба сделанная как window-процесс на сервере, подключится с ней можно только с самого сервера, подключения с других компьютеров не проходят. Вот конфиг службы:
<?xml version="1.0" encoding="utf-8"?> <configuration> <startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" /> </startup> <system.serviceModel> <services> <service name="FileHosting.Server.Model.FileHostService" behaviorConfiguration="myBehavior"> <host> <baseAddresses> <add baseAddress="http://localhost:8000/FileHosting/FileHostService" /> </baseAddresses> </host> <endpoint address="" binding="basicHttpBinding" bindingConfiguration="Binding" contract="FileHosting.Common.Services.IFileHostService"> </endpoint> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services> <behaviors> <serviceBehaviors> <behavior name="myBehavior"> <serviceMetadata httpGetEnabled="true"></serviceMetadata> </behavior> </serviceBehaviors> </behaviors> <bindings> <basicHttpBinding> <binding name="Binding"> <security mode="None"> <transport clientCredentialType="None" /> </security> </binding> </basicHttpBinding> </bindings> </system.serviceModel> </configuration> <!-- binding="basicHttpBinding" -->
Когда служба запущена на сервере, locahost в конфиге заменен на внешний ip сервера. Как побороть такое поведение?2 июня 2017 г. 14:40
Ответы
-
Все просто: нужно заместо locahost написать 0.0.0.0 и тогда служба будет принимать подключение на всех сетевых интерфейсах.
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 5 июня 2017 г. 6:42
2 июня 2017 г. 17:45
Все ответы
-
Если речь об IIS Express, то здесь обсуждаются вопросы видимости службы "из вне". Собственно, изложенные там идеи (касательно netsh и фаервола) можно применить и к WCF-службе, хостом которой является обычное консольное приложение .NET.
Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!
2 июня 2017 г. 14:55 -
Все просто: нужно заместо locahost написать 0.0.0.0 и тогда служба будет принимать подключение на всех сетевых интерфейсах.
- Помечено в качестве ответа Maksim MarinovMicrosoft contingent staff, Moderator 5 июня 2017 г. 6:42
2 июня 2017 г. 17:45 -
Все просто: нужно заместо locahost написать 0.0.0.0 и тогда служба будет принимать подключение на всех сетевых интерфейсах.
Если проблема решена, закрывайте тему.Если сообщение помогло Вам, пожалуйста, не забудьте отметить его как ответ данной темы. Удачи в программировании!
4 июня 2017 г. 19:04