SOAP 및 REST를 지원하는 WCF 웹 서비스를 작성하고 있습니다. 나는 또한 WCF REST Help 페이지를 사용했다. 이것은 웹 서비스의 소비자에게 매우 유용하다. IIS와 web.config (아래 참조)에서 SSL을 활성화 했으므로 WCF REST 도움말 페이지를 더 이상 얻을 수 없습니다. https://myHost/myWebService/help
에 액세스하면 HTTP 404 오류가 발생합니다. SSL을 사용하기 전에 해당 페이지에 액세스 할 수있었습니다.HTTPS를 통해 WCF REST 도움말 페이지를 표시 할 수 없습니다.
아래는 내 web.config입니다. 다른 사람이 HTTPS/SSL을 통해 WCF REST 도움말 페이지를 활성화하는 방법을 이해할 수 있도록 도와 주시겠습니까? serviceMetadata
요소의
<?xml version="1.0"?>
<configuration>
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
<services>
<service name="MyNs.MyServiceWebserviceImpl" behaviorConfiguration="DefaultBehavior">
<endpoint name="MyServiceRestEndpoint" address="" binding="webHttpBinding" behaviorConfiguration="MyServiceRestBehavior" contract="MyNs.IMyServiceWebservice" />
<endpoint name="MyServiceSoapEndpoint" address="soap" binding="basicHttpBinding" bindingConfiguration="MyServiceSoapBinding" behaviorConfiguration="MyServiceSoapBehavior" contract="MyNs.IMyServiceWebservice" />
<endpoint name="MyServiceMexEndpoint" address="mex" binding="mexHttpsBinding" bindingConfiguration="" contract="IMetadataExchange" />
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="DefaultBehavior">
<serviceDebug includeExceptionDetailInFaults="true" />
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="MyServiceRestBehavior">
<webHttp helpEnabled="true" defaultOutgoingResponseFormat="Json" automaticFormatSelectionEnabled="true" />
</behavior>
<behavior name="MyServiceSoapBehavior" />
</endpointBehaviors>
</behaviors>
<bindings>
<webHttpBinding>
<binding name="MyServiceRestBinding">
<security mode="Transport" />
</binding>
</webHttpBinding>
<basicHttpBinding>
<binding name="MyServiceSoapBinding">
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
</configuration>
이미 webHttp helpPage 속성을 사용할 수 있습니다. HTTPS를 사용하면 페이지가 렌더링되지 않습니다. 404의 결과입니다. – Martin
죄송합니다, 답변을 서두에서 그것을 발견하지 못했습니다 :) Sooo, 당신은 일을해야합니다. SSL을 사용하여 끝점을 계속 구성한 상태에서 HTTP로 도움말에 액세스하려고하면 아무 것도 얻을 수 있습니까? –
IIS가 SSL을 요구하도록 설정되어 있기 때문에 HTTP 버전이 차단되었습니다. 사용 중지하면 페이지가 다시 나타납니다. 문제는 SSL을 비활성화하지 않으려는 것입니다. – Martin