【问题标题】:WCF SSL over load balancer. Load balancer changing ssl portWCF SSL 通过负载平衡器。负载均衡器更改 ssl 端口
【发布时间】:2011-09-20 22:07:45
【问题描述】:

我的客户端应用程序正在尝试使用传输安全性调用 wcf 服务。 wcf 服务位于硬件负载平衡器后面的 2 个节点上。

硬件负载平衡器在端口 443 上获取 wcf 调用,然后将端口更改为 44556。 这会产生端点不匹配错误。在这里负责我们的生产和 QA 部门的人,不希望 wcf 服务出于任何原因坐在端口 443 上,因此他们为什么要设置端口更改。

然后我将负载均衡器更改为不将端口更改为 44556,而是将其保留为端口 443,并且服务按预期调用。

我的问题是,我可以对我的服务\IIS 进行任何配置,让服务在从端口 443 进来时接受端口 44566 上的 wcf 调用?

谢谢,

【问题讨论】:

    标签: c# wcf .net-3.5 iis-6


    【解决方案1】:

    是的,您需要更改服务器和客户端绑定。查看clientVia 元素。

    在服务器上:listenUri 属性添加到您的端点,并使用 urn 将地址名称更改为您的服务。 (与客户同名)

    <endpoint address="urn:MyService" listenUri="https://localhost:443/MyService" binding="customBinding" bindingConfiguration="NetHttpBinding" contract=Interface.ITradingPlatform"/>
    

    在客户端:

    例如,不是在端点的地址字段中指定 URL,而是添加一个 urn,然后添加一个 behaviorConfiguration 属性:

    <endpoint name="ServerHTTP"
                          address="urn:MyService"
                          binding="customBinding"
                          bindingConfiguration="NetHttpBinding"
                          contract="Client.ITradingPlatform"
                behaviorConfiguration="BehaviorHTTP">
    
          </endpoint>
    

    您还需要定义行为配置:

    <behaviors>
          <endpointBehaviors>
     <behavior name="BehaviorHTTP">
              <clientVia viaUri="https://yourdomain.com:443/MyService"/>
            </behavior>
    </endpointBehaviors>
        </behaviors>
    

    【讨论】:

      猜你喜欢
      • 2022-01-10
      • 2023-04-09
      • 1970-01-01
      • 2021-12-07
      • 2021-07-16
      • 2011-04-21
      • 2011-08-04
      • 2016-04-17
      • 2015-01-13
      相关资源
      最近更新 更多