您的位置:首页 > 其它

WCF配置中遇到的问题:如何把Hostname修改成IP

2010-06-12 21:25 232 查看
最近遇到这么一个问题:在客户那里配置WCF服务的时候,使用的是IIS作为HOST,但是客户又没有购买网址,也就没有DNS和IP地址之间的解析了,只有一个IP地址在外网上是可以访问的,但是在服务器上面配置好的WCF服务发布的时候会是如下的样子:
比如IIS服务器的Hostname是“ServerPC”,IP地址是"192.168.100.1",在2009端口有一个WCF服务“MyService.svc”,我期望的URL是如下的样子:
http://192.168.100.1:2009/MyService.svc这样就能在外网上面访问这个WCF服务了,但是发布出来的格式却是如下格式: http://ServerPC:2009/MyService.svc 这样的话,在外网上面是无法访问这个地址的,以前的解决方法是在任何一个调用的客户端的机器上面修改hosts文件,加入一条记录

192.168.100.1 ServerPC,也可以解决这个问题,但是如果客户端众多的话,这肯定不是一个理想的办法,可能是关键字没有找对吧,一直没有在网上找到这个问题的解决办法,今天在Google上面找到了一个哥们儿写的博客解决了这个问题这是原始文章,不过是Google的一个快照,原始地址我这里不知道为什么无法访问。解决方法是调用VB脚本解释器cscript.exe 执行%systemdrive%\inetpub\adminscripts\adsutil.vbs 这个脚本,下面是一个批处理的例子:

cls
cscript.exe //nologo %systemdrive%\inetpub\adminscripts\adsutil.vbs set W3SVC/your_website_identifier_here/ServerBindings 127.0.0.1:80:127.0.0.1
iisreset
其中的your_website_identifier_here是IIS设置中指定网站的标示符,(打开IIS管理器,点击左边的网站节点,右边的表格中的“标示符”一列就是了),然后设置的时候是按照ip:port:hostname的格式进行设置的,想达到我的目的只要把ip和hostname设置成一样就可以了。大家如果遇到和我一样的问题就可以使用这个办法解决,当然原文中作者讲的比我详细多了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐