找不到与端点方案 http 匹配的基地址,该端点具有绑定 WSHttpBinding 且没有解决方案
Posted
技术标签:
【中文标题】找不到与端点方案 http 匹配的基地址,该端点具有绑定 WSHttpBinding 且没有解决方案【英文标题】:Could not find a base address that matches scheme http for the endpoint with binding WSHttpBinding with NO SOLUTION YET 【发布时间】:2015-02-06 15:15:26 【问题描述】:我有一个 WCF 服务(带有身份验证和授权)托管在 IIS 7.5 中,使用 Windows Server 2008 R2 中的 SSL 认证。在此服务器中使用 Visual Studio 运行 WCF 应用程序时出现错误。 WCF 测试客户端给了我这个错误:找不到与具有绑定 WSHttpBinding 的端点的方案 https 匹配的基地址。但它在 IIS 中工作。而且我可以在我的 Web 应用程序中部署我的 WCF 服务而不会出错。所有的建议都试过了,没有解决办法。
我的 web.config:
<system.serviceModel>
<bindings>
<wsHttpBinding>
<binding name="wsHttpEndpointBinding">
<security mode="TransportWithMessageCredential">
<transport clientCredentialType="None"/>
<message clientCredentialType="UserName"/>
</security>
</binding>
</wsHttpBinding>
</bindings>
<services>
<service behaviorConfiguration="ServiceBehavior" name="TBBWS.TBBService">
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="wsHttpEndpointBinding"
name="wsHttpEndpoint" contract="TBBWS.ITBBService" />
<endpoint address="mex" binding="mexHttpsBinding" bindingConfiguration=""
name="MexHttpsBindingEndpoint" contract="IMetadataExchange"/>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="ServiceBehavior">
<serviceMetadata httpGetEnabled="false" httpsGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
<serviceCredentials>
<userNameAuthentication userNamePasswordValidationMode="Custom"
customUserNamePasswordValidatorType="TBBWS.CustomValidation, App_Code" />
</serviceCredentials>
<serviceAuthorization principalPermissionMode="Custom">
<authorizationPolicies>
<add policyType="TBBWS.CustomAuthorizationPolicy, App_Code" />
</authorizationPolicies>
</serviceAuthorization>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<remove scheme="http" />
<add binding="wsHttpBinding" scheme="https" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
有什么建议吗?
【问题讨论】:
对于我没有启用 SSL 的本地环境,我只是评论了 SSL 端点 【参考方案1】:好的,我明白了。对于那些因为同样的问题需要帮助的人:
1)我在 serviceCredentials 标签下添加了<serviceCertificate storeLocation="LocalMachine" storeName="My" findValue="bla bla bla" x509FindType="FindByThumbprint" />
。
2)我定义了 2 个绑定。 http 和 https。我删除了 http 绑定。
还是谢谢...
【讨论】:
以上是关于找不到与端点方案 http 匹配的基地址,该端点具有绑定 WSHttpBinding 且没有解决方案的主要内容,如果未能解决你的问题,请参考以下文章
从 http 到 https,得到“找不到与绑定 WebHttpBinding 的端点的方案 http 匹配的基地址”
找不到与具有绑定 WebHttpBinding 的端点的方案 https 匹配的基地址。注册的基地址方案是 [http]
WCF 错误“找不到与具有绑定 NetTcpBinding 的端点的方案 net.tcp 匹配的基地址”
WCF Web 服务未部署在 localhost ... web.config ... 端点上