博客
关于我
WCF 部署时,soap:address location 显示的是电脑名,而不是ip地址
阅读量:758 次
发布时间:2019-03-23

本文共 678 字,大约阅读时间需要 2 分钟。

在部署WCF服务时,可能会遇到一个常见问题:wsdl:import location显示的是电脑名而非IP地址。当服务是通过内部调用时可以正常使用,但外部用户则无法访问,post请求也会发送到错误的地址。这种情况的根源通常与web.config文件中的设置相关。

我曾尝试在web.config中添加以下配置:

然而,发现multipleSiteBindingsEnabled="true"设置后,soap:address locationwsdl:import location仍显示的是电脑名而非IP地址或域名。经过进一步分析,发现当multipleSiteBindingsEnabled设置为true时,需要确保<serviceHostingEnvironment>标签正确配置,并且所有相关的绑定配置也必须正确添加。

正确的做法是确保multipleSiteBindingsEnabled="true",这样WebService的WSDL文件和wsdl:import location都会显示一致的地址,即IP地址或域名,而不是随机的电脑名。若多张站反向代理配置存在问题,Wsdl链接也会因此出现错误,导致外部客户端无法正常访问服务。

小结:在部署WCF服务时,尤其是涉及多站绑定(multipleSiteBindingsEnabled)的情况下,务必确保配置完整且正确。只有当multipleSiteBindingsEnabled="true"时,WSDL文件和服务地址才会一致显示成IP地址或域名,否则会导致外部客户端无法正常使用服务。

转载地址:http://xpzzk.baihongyu.com/

你可能感兴趣的文章
npm install 卡着不动的解决方法
查看>>
npm install 报错 EEXIST File exists 的解决方法
查看>>
npm install 报错 ERR_SOCKET_TIMEOUT 的解决方法
查看>>
npm install 报错 Failed to connect to github.com port 443 的解决方法
查看>>
npm install 报错 fatal: unable to connect to github.com 的解决方法
查看>>
npm install 报错 no such file or directory 的解决方法
查看>>
npm install 权限问题
查看>>
npm install报错,证书验证失败unable to get local issuer certificate
查看>>
npm install无法生成node_modules的解决方法
查看>>
npm install的--save和--save-dev使用说明
查看>>
npm node pm2相关问题
查看>>
npm run build 失败Compiler server unexpectedly exited with code: null and signal: SIGBUS
查看>>
npm run build报Cannot find module错误的解决方法
查看>>
npm run build部署到云服务器中的Nginx(图文配置)
查看>>
npm run dev 和npm dev、npm run start和npm start、npm run serve和npm serve等的区别
查看>>
npm run dev 报错PS ‘vite‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。
查看>>
npm scripts 使用指南
查看>>
npm should be run outside of the node repl, in your normal shell
查看>>
npm start运行了什么
查看>>
npm WARN deprecated core-js@2.6.12 core-js@<3.3 is no longer maintained and not recommended for usa
查看>>