2012-12-12 2 views
0

웹상에 이와 유사한 주제가 여러 개 있지만이 문제를 해결하는 데 도움이되지는 않았습니다.메시지를 수락 할 수있는 [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> 

편집 : 내가 로컬 환경에서 생산 서비스를 사용하려고하면, 그것은 잘 작동 언급하는 것을 잊었다!

+1

동일한 프로세스에서 서비스와 소비자를 호스팅하는 이유는 무엇입니까? 이것은 의미가 없습니다. –

+0

@hugh - 좋아요, 여기에 이유가 있습니다 - 여러 조직에 서비스를 제공하는 동일한 웹 응용 프로그램의 인스턴스가 여러 개 있습니다. 문제의 서비스는 실행되는 인스턴스의 특정 데이터를 노출합니다 (이 데이터는 인스턴스마다 다를 수 있음). 각 인스턴스는 다른 인스턴스에서 실행중인 다른 서비스에 대한 지식을 가지고 있습니다 (서비스 URL은 데이터베이스에 저장 됨). 웹 응용 프로그램에는 특정 모듈이 있으며, 기본적으로이 모듈은 알고 있고 표시 한 모든 서비스에서 데이터를 가져옵니다. 그래서 기본적으로 목적은 관련 조직의 데이터를 보여주는 것입니다. – 1nfected

+0

그래서 각 서비스가 w3wp.exe의 다른 인스턴스에서 실행되고 있습니까? 그리고 각 웹 응용 프로그램의 클라이언트는 다른 w3wp 프로세스에서 실행되는 서비스 만 호출하고 있습니까? –

답변

2

글쎄, 완전히 다른 문제로 밝혀졌습니다. 웹 응용 프로그램 (실제로는 서비스)이 서버 자체에서 액세스 할 수 있음이 밝혀졌습니다. 즉, 서버 자체에서 사이트를 탐색하려고하면 "페이지를 찾을 수 없습니다"라는 메시지가 나타납니다.

0

나는 또한 동일한 문제가있었습니다. 제 경우에는 전화를 걸던 서버에 방화벽 문제가있었습니다. 그들은 방화벽을 열지 못했습니다. 그들이 열면 문제가 해결됩니다.

관련 문제