我无法让我的WCF服务使用多个http绑定。
在IIS 7中,我必须绑定http:/ service和http:/service.test 80号港口。
在我的web.config
我添加了baseAddressPrefixFilters,但我无法添加
不止一个
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix="http://service"/>
<add prefix="http://service.test"/>
</baseAddressPrefixFilters>
</serviceHostingEnvironment>
这给出了几乎相同的错误
此集合已包含方案http的地址。那里 此集合中每个方案最多只能有一个地址。
好像根本没有指定任何文件管理器(此集合已包含 地址与方案http。每个方案最多只能有一个地址 这个系列。 参数名称:item)
如果我只添加一个过滤器,那么该服务可以正常工作,但只能响应 添加过滤器地址。
我也尝试过指定多个端点(只有一个过滤器):
<endpoint address="http://service.test" binding="basicHttpBinding" bindingConfiguration="" contract="IService" />
<endpoint address="http://service" binding="basicHttpBinding" bindingConfiguration="" contract="IService" />
然后,仍然只有过滤器中指定的地址有效,另一个 返回此错误:
应用程序“ISPSERVICE”HTTP错误400.0中的服务器错误 - 错误请求
此致 的Morten
答案 0 :(得分:0)
前几天我试图将WCF服务部署到我的一个Web服务器上并遇到问题。我不断收到以下错误消息:
此集合已包含方案http的地址。那里 在此collection.Parameter中,每个方案最多只能有一个地址 名称:项目
问题没有发生在我的本地计算机上,而是在网络服务器上发生,使得弄清楚导致它的原因有点困难。它发生在服务器上,因为我的Web服务器位于共享托管环境中,在这种情况下,WCF服务还需要知道主机头。为此,我在web.config中导航到<system.serviceModel>
并添加了以下内容:
<serviceHostingEnvironment>
<baseAddressPrefixFilters>
<add prefix=http://MyHostHeader />
</baseAddressPrefixFilters>
</serviceHostingEnvironment>