웹상에 이와 유사한 주제가 여러 개 있지만이 문제를 해결하는 데 도움이되지는 않았습니다.메시지를 수락 할 수있는 [url]을 청취하는 끝 점이 없습니다.
IIS에서 동일한 웹 응용 프로그램 (이유를 묻지 않음)에서 호스팅 및 사용하는 wcf 서비스가 있습니다. 그래서 내 Web.config의이 내 로컬 환경에서 절대적으로 잘 작동이
<system.serviceModel>
<services>
<service name="Management.Service.ManagementService" behaviorConfiguration="Management.Service.ManagementServiceBehavior">
<endpoint name="default" binding="basicHttpBinding" bindingConfiguration="default" contract="Management.Service.IManagementService" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="Management.Service.ManagementServiceBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"/>
<bindings>
<basicHttpBinding>
<binding name="default" closeTimeout="00:01:00" openTimeout="00:01:00"
receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false"
bypassProxyOnLocal="true" hostNameComparisonMode="StrongWildcard"
maxBufferSize="2147483647" maxBufferPoolSize="524288" maxReceivedMessageSize="2147483647"
messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
useDefaultWebProxy="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<security mode="None">
<transport clientCredentialType="None" proxyCredentialType="None"
realm="" />
<message clientCredentialType="UserName" algorithmSuite="Default" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="http://www.example.com/Service.svc"
binding="basicHttpBinding" bindingConfiguration="default"
contract="Management.Client.IManagementService" name="default" />
</client>
</system.serviceModel>
처럼 보이는, 그리고 난 모든 브라우저에서 서비스 (생산)를 찾아 볼 수 있습니다. 그러나 어떤 이유로 든 프로덕션 서버에서 There was no endpoint listening
오류가 발생합니다.
<system.serviceModel>
태그 뒤에 다음 블록을 추가하여 추적을 사용하도록 설정했지만 추적 파일이 생성되지 않습니다.
<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Information, ActivityTracing" propagateActivity="true" >
<listeners>
<add name="xml"/>
</listeners>
</source>
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="xml"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="C:\inetpub\WcfClient.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xml"/>
</sharedListeners>
</system.diagnostics>
편집 : 내가 로컬 환경에서 생산 서비스를 사용하려고하면, 그것은 잘 작동 언급하는 것을 잊었다!
동일한 프로세스에서 서비스와 소비자를 호스팅하는 이유는 무엇입니까? 이것은 의미가 없습니다. –
@hugh - 좋아요, 여기에 이유가 있습니다 - 여러 조직에 서비스를 제공하는 동일한 웹 응용 프로그램의 인스턴스가 여러 개 있습니다. 문제의 서비스는 실행되는 인스턴스의 특정 데이터를 노출합니다 (이 데이터는 인스턴스마다 다를 수 있음). 각 인스턴스는 다른 인스턴스에서 실행중인 다른 서비스에 대한 지식을 가지고 있습니다 (서비스 URL은 데이터베이스에 저장 됨). 웹 응용 프로그램에는 특정 모듈이 있으며, 기본적으로이 모듈은 알고 있고 표시 한 모든 서비스에서 데이터를 가져옵니다. 그래서 기본적으로 목적은 관련 조직의 데이터를 보여주는 것입니다. – 1nfected
그래서 각 서비스가 w3wp.exe의 다른 인스턴스에서 실행되고 있습니까? 그리고 각 웹 응용 프로그램의 클라이언트는 다른 w3wp 프로세스에서 실행되는 서비스 만 호출하고 있습니까? –