远程客户端由于元数据地址主机名为服务器计算机名而无法解析WCF服务元数据的解决办法

时间:2021-08-24 13:58:44

我做了一个WCF服务部署在服务器上,映射到外网,外网客户端引用服务时,元数据地址的主机名总是服务器的计算机名,由于客户端在服务器的外网,所以客户端是无法识别服务器的计算机名的。

如我的发布的服务地址是:http://外网地址:端口号/服务名.svc。元数据地址会自动解析为:http://计算机名:端口号/服务名.svc?wsdl【具体原因还不知道,如果有人知道的话麻烦留言指教】。

我试过修改IIS设置,但仍无效【如果有牛人知道是由于IIS配置的问题,也请留言教我怎么配】。

解决办法为在客户端添加服务器计算机名的映射,具体操作如下:

找到C:\Windows\System32\drivers\etc\hosts文件,记事本打开,添加映射,如下图:

远程客户端由于元数据地址主机名为服务器计算机名而无法解析WCF服务元数据的解决办法