IIS 6에 WCF 웹 서비스가 있고 SSL을 통해 작동하도록했습니다. 서비스를 호출 할 때 다음 오류가 발생합니다.SSL을 통한 WCF 문제
메시지를 처리 할 수 없습니다. 이는 'http://tempuri.org/IARPolicyComposer/GetTemplatesList'작업이 올바르지 않거나 메시지에 유효하지 않거나 만료 된 보안 컨텍스트 토큰이 있거나 바인딩간에 불일치가 있기 때문에 발생할 수 있습니다. 서비스가 비활성으로 인해 채널을 중단 한 경우 보안 컨텍스트 토큰이 유효하지 않습니다. 서비스가 유휴 세션을 중단하지 못하도록하려면 서비스 끝점의 바인딩에서 수신 제한 시간을 조기에 늘리십시오.
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
<bindings>
<wsHttpBinding>
<binding name="WSHttpBinding_IARPolicyComposer">
<security mode="Transport">
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service behaviorConfiguration="PolicyComposer.ARPolicyComposerBehavior" name="PolicyComposer.ARPolicyComposer">
<endpoint address="" binding="wsHttpBinding" contract="PolicyComposer.IARPolicyComposer">
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="PolicyComposer.ARPolicyComposerBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="true" />
</behavior>
<behavior name="">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
클라이언트의 설정 :
<wsHttpBinding>
<binding name="WSHttpBinding_IARPolicyComposer" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:10:00" bypassProxyOnLocal="false" transactionFlow="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false">
<readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" maxBytesPerRead="4096" maxNameTableCharCount="16384" />
<reliableSession ordered="true" inactivityTimeout="00:10:00" enabled="false" />
<security mode="Transport">
</security>
</binding>
</wsHttpBinding>
모두 서비스와 클라이언트가 동일한 도메인에 여기
는 서비스 설정입니다.
에 바인딩 MEX 변경에 대한 * 보안 설정을해야 할 그 가능성이 타임 아웃 *을받을 수 있습니다. –
ssl이 없으면 작동합니까? 한번 시도한 적이 없다면 SSL을 사용하지 않고 작동하게하십시오 ... –
다음 오류가 로그 파일에 기록되고 웹 사이트에 인증서가없고 'SSL 필요'도 선택되어 있지 않은 것으로 나타납니다 : ** 찾을 수 없습니다. 바인딩 WSHttpBinding을 사용하여 끝점에 대한 구성표 https와 일치하는 기본 주소입니다. 등록 된 기본 주소 체계는 [http] .. ** – Evan