您的位置:首页 > 其它

WCF使用IIS发布服务的配置

2012-11-04 20:46 323 查看
  关于WCF开发的服务,如果使用IIS发布部署的,对于Web.Config文件中的配置还是相对严格,如果客户端和服务端的配置不一致就会出现莫名其妙的问题,让人及其头疼,所以要对WCF的配置设置非常熟悉。

View Code

<system.serviceModel>
<bindings>
<basicHttpBinding>
</basicHttpBinding>
<wsHttpBinding>
<binding name="wsTSBinding" maxReceivedMessageSize="2147483647" messageEncoding="Text" receiveTimeout="00:30:00" sendTimeout="00:30:00">
<security mode="Message">
<!--定义消息级安全性要求的类型,为Windows、用户名、证书-->
<message clientCredentialType="Windows" />
<transport clientCredentialType="None" />
</security>
<!--<security mode="Transport">
<transport clientCredentialType="None" />
</security>-->
</binding>
</wsHttpBinding>
<netMsmqBinding>
</netMsmqBinding>
<netTcpBinding>

</netTcpBinding>
</bindings>
<services>
<service name="WcfService1.Persons" behaviorConfiguration="WCFServiceBehavior">
<!-- Service Endpoints -->
<endpoint address="" binding="wsHttpBinding" bindingConfiguration="wsTSBinding" contract="WcfService1.IPersons">
<!--
Upon deployment, the following identity element should be removed or replaced to reflect the
identity under which the deployed service runs.  If removed, WCF will infer an appropriate identity
automatically.
-->
<identity>
<!--dns value的值设置为:WCFServerCA,就是证书的名称-->
<!--<dns value="WCFCert" />-->
</identity>
</endpoint>
<!--<endpoint
address="http://localhost:9008/StockService.svc"
binding="basicHttpBinding" contract="WcfService1.IStockService">
</endpoint>-->
<!--<endpoint
address="net.msmq://localhost:9007/Persons.svc"
binding="netMsmqBinding" contract="WcfService1.IPersons">
</endpoint>
<endpoint
address="net.tcp://localhost:9006/Persons.svc"
binding="netTcpBinding" contract="WcfService1.IPersons">
</endpoint>-->
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
<host>
<baseAddresses>
<add baseAddress="http://localhost:9009/"/>
</baseAddresses>
</host>
</service>
</services>
<behaviors>
<serviceBehaviors>
<behavior name="WCFServiceBehavior">
<!-- 为避免泄漏元数据信息,请在部署前将以下值设置为 false 并删除上面的元数据终结点 -->
<serviceMetadata httpGetEnabled="true" />
<!-- 要接收故障异常详细信息以进行调试,请将以下值设置为 true。在部署前设置为 false 以避免泄漏异常信息 -->
<serviceDebug includeExceptionDetailInFaults="false" />
<!--<serviceAuthenticationManager serviceAuthenticationManagerType="Negotiate, Digest, Basic"/>-->
<serviceCredentials>
<!--指定一个 X.509 证书,用户对认证中的用户名密码加密解密-->
<!--<serviceCertificate findValue="WCFCert" x509FindType="FindBySubjectName" storeLocation="CurrentUser" />-->
<!--自定义用户名和密码验证的设置-->
<!--<userNameAuthentication userNamePasswordValidationMode="Custom" customUserNamePasswordValidatorType="WcfService1.CustomValidators.MyCustomValidator,WcfService1" />-->
<clientCertificate>
<!-- 客户凭据验证模式为 None 不验证 -->
<authentication certificateValidationMode="None" />
</clientCertificate>
</serviceCredentials>
</behavior>
</serviceBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
</system.serviceModel>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: