我有一个WCF REST服务,当使用IISExpress和以下URL时,该服务可以调试并完美运行:
http://localhost:<portnumber>
但是,由于各种原因,我还需要它也可以与IIS Express和THIS url一起使用:
http://<ip address>:<portnumber>
最初尝试时,出现HTTP错误400:错误的请求。然后我用了google,结果到了这里:Connecting to Visual Studio debugging IIS Express server over the lan
该线程问了完全相同的问题,而答案使我成为了其中的一部分。遵循该线程中所有最出色的建议,我执行了以下操作:
编辑IISExpress Host.config:
1:打开%USERPROFILE%\My Documents\IISExpress\config\applicationhost.config文件。
2:更改了所有以下17行:
<binding protocol="http" bindingInformation="*:8080:localhost" />
看起来像这样:
<binding protocol="http" bindingInformation="*:8080:*" />
(端口号在所有17条线路上都不同)
Visual Studio:
关闭,重新打开,但以管理员身份运行
Windows防火墙:
添加了有问题的端口以允许传入连接
CMD:
netsh http add urlacl url=http://*:XXXXX/ user=Everyone
运行该命令,其中XXXXX是端口号。
现在,当我开始调试并转到以下URL时:
http://<ip address>:<portnumber>
现在,我收到的不是“HTTP错误400:错误的请求”,而是“HTTP错误503。服务不可用”。
这是进步,因为浏览器现在至少已经达到了IISExpress,对吗?但目前我不确定如何克服此503错误。我已经在Google上搜索该错误已有一段时间了,但是我要尝试执行的操作没有什么特别的。
有任何想法吗?
最佳答案
弄清楚了。代替这个:
<binding protocol="http" bindingInformation="*:8080:*" />
更改为此:
<binding protocol="http" bindingInformation="*:8080:" />
关于wcf - Visual Studio 2013 : Debug using IP Address instead of LocalHost,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29016760/