我在IIS 7上运行WCF并使用负载均衡的服务器配置。WCF服务不能在SSL下工作
当我们正常运行它时,一切正常,但当我们试图打开SSL时,一切都停止工作。我已经尝试了所有不同的配置设置,如传输和消息web.config但似乎没有工作。
甚至不允许我添加对项目的引用,只是带着关于文档类型的奇怪错误返回。
一切工作正常我们的主要网络服务器,所以我不认为它与数字证书的问题。
我在IIS 7上运行WCF并使用负载均衡的服务器配置。WCF服务不能在SSL下工作
当我们正常运行它时,一切正常,但当我们试图打开SSL时,一切都停止工作。我已经尝试了所有不同的配置设置,如传输和消息web.config但似乎没有工作。
甚至不允许我添加对项目的引用,只是带着关于文档类型的奇怪错误返回。
一切工作正常我们的主要网络服务器,所以我不认为它与数字证书的问题。
我不知道您正在负载均衡器上使用SSL加速来保存证书。如果你是这个可能会解释错误。
当我们实现负载均衡时,我们的服务器也出现类似的问题。问题是SSL加速会干扰WCF在添加服务引用时拾取引用的方式。
有一篇文章here解释了如何解决问题。它也有图表和内容。
我检查了我的服务器人,他正在负载平衡器上托管数字证书。当我们在测试服务器上安装证书并更改了dns时,它一切正常。我确实有我的httpsGetEnabled仍然设置为http,所以我认为这也有帮助。 – WillSkills
看一看这个链接 http://www.codeproject.com/Articles/36705/7-simple-steps-to-enable-HTTPS-on-WCF-WsHttp-bindi
,也看看下面
您必须配置服务使用HTTPS:
<bindings>
<basicHttpBinding>
<binding name="https">
<security mode="Transport" />
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="metadata">
<serviceMetadata httpsGetEnabled="true" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service name="..." behaviorConfiguration="metadata">
<endpoint address="..." contract="..." binding="basicHttpBinding"
bindingConfiguration="https" />
</service>
</services>
您需要更改WCF绑定以允许SSL传输。 你可以发布你的绑定配置吗? 对于通过SSL发布的元数据,还需要更改mex端点绑定和服务行为元数据发布。 – Paciv
您需要更具体地了解您的问题,向我们展示一些代码和配置,告诉我们具体的错误等等(把自己置于我们的位置:很难回答现在的问题)。请注意,您可以随时编辑您的问题! – Jeroen
在我们的测试服务器上,似乎一切正常,并且我正确设置了绑定中的设置。我将与我们的服务器人员谈话,以了解更多关于他如何配置SSL的内容,因为我自己没有这样做 –
WillSkills