2012-09-07 90 views
2

我創建了WCF服務及其使用SSL。我可以編譯並啓動服務。但是,我無法在網絡瀏覽器中找到它。它說的是「到192.168.1.12的連接被中斷。」我確保我的瀏覽器啓用了它,並且可以在使用SSL的其他網站上運行。我是WCF服務新手,因此任何有關故障排除的建議或提示都會有所幫助。我不使用IIS無法使用SSL命中WCF服務

**

下面是我的web配置信息:

<system.serviceModel> 
    <bindings> 
     <basicHttpBinding> 
     <binding name="WSHttpBinding_IApplicationService" closeTimeout="00:01:00" openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" messageEncoding="Text" textEncoding="utf-8" useDefaultWebProxy="true" allowCookies="false"> 
      <readerQuotas maxDepth="32" maxStringContentLength="2147483647" maxArrayLength="6553600" maxBytesPerRead="4096" maxNameTableCharCount="16384" /> 
      <security mode="Transport"> 
      <transport clientCredentialType="None" proxyCredentialType="None" realm=""/> 
      <message clientCredentialType="Certificate" algorithmSuite="Default" /> 
      </security> 
     </binding> 
     </basicHttpBinding> 
    </bindings> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 
    <services> 
     <service name="Application.ServiceModel.ApplicationService" behaviorConfiguration="ApplicationServiceBehavior"> 
     <host> 
      <baseAddresses> 
      <add baseAddress="https://192.168.1.12:8000/ApplicationServiceModel/service" /> 
      </baseAddresses> 
     </host> 
     <endpoint address="" binding="basicHttpBinding" bindingConfiguration="WSHttpBinding_IApplicationService" contract="Application.ServiceModel.IApplicationService" /> 
     <endpoint address="mex" binding="mexHttpsBinding" contract="IMetadataExchange" /> 
     </service> 
    </services> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior name="ApplicationServiceBehavior"> 
      <serviceMetadata httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    </system.serviceModel> 
+4

您應該發佈web.config的''元素,它可以幫助人們診斷您的問題 – paul

+0

可能的重複:http://stackoverflow.com/questions/1345849/connection-interrupted-when -using-webhttpbinding-in-transport-securitymode – danielQ

+0

我已經嘗試了MSDN文章中的提示,它沒有幫助。 – spyter

回答

1

自簽名的證書,通常被認爲是無效的,只有真正用於測試。

在wcf中,您可以使用以下忽略證書錯誤(在客戶端上)。

ServicePointManager.ServerCertificateValidationCallback = delegate { return true; }; 

但是,它應該只用於測試。在生產環境中,您希望獲得由可信任的證書頒發機構簽名的證書。