我正在尝试在 IIS 7.5 下建立一个具有多个 tcp.net 绑定的网站。
由于该服务位于负载均衡器后面,因此我需要该服务的多个端点:
log.o1881.no/log/service.svc
log.core1.o1881.no/log/service.svc
当我在 web.config 中配置时,这适用于 http 绑定:
<system.serviceModel>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
将以下 tcp.net 绑定添加到站点时会出现以下错误消息:
808:log.o1881.no
808:log.core1.o1881.no
“/Log”应用程序中的服务器错误。
此集合已经包含一个带有方案 net.tcp 的地址。此集合中的每个方案最多可以有一个地址。如果您的服务托管在 IIS 中,您可以通过将“system.serviceModel/serviceHostingEnvironment/multipleSiteBindingsEnabled”设置为 true 或指定“system.serviceModel/serviceHostingEnvironment/baseAddressPrefixFilters”来解决问题。参数名称:项目
我还尝试将其添加到 web.config:
<serviceHostingEnvironment multipleSiteBindingsEnabled="true">
<baseAddressPrefixFilters>
<add prefix="net.tcp://log.o1881.no:808/log" />
<add prefix="net.tcp://log.core1.o1881.no:808/log" />
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
然而,这不起作用。
由于该服务将部署在多台服务器上,我非常希望能够通过配置和 IIS 设置来完成这项工作,而不是在代码中。
是否可以这样做,或者是否有另一种方法来处理这种情况(由于负载平衡,http 和 net.tcp 上有多个绑定名称)?