如何在IIS Express中启用远程请求?斯科特格思里写道,这是可能的,但他没有说明如何.
我想从网络上的另一台计算机访问我的本地主机!我使用了我的电脑的IP,并在Windows防火墙上为我的端口创建了一个入站规则.
这是我的本地主机地址:localhost:2523/StartUpPage.aspx
我使用我的主机系统的IP 192.168.0.101
所以当我使用时192.168.0.101:2523/StartUpPage.aspx
我得到HTTP 400 bad request hostname错误
注意:我的系统在本地计算机上运行没有问题!
我怎么解决这个问题?
提前致谢!
我试图让IIS Express工作,以便外部用户可以查看我的MVC ASP.NET开发网站.我按照这个SO答案的说明,但现在使用我的外部IP地址访问网站时出现503错误,localhost仍然可以正常工作.
我的配置文件似乎没问题
<site name="ManagerUI" id="5">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\Application Development\Manager\MAIN-Branch\ManagerUI\ManagerUI" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:1904:" />
</bindings>
</site>
Run Code Online (Sandbox Code Playgroud)
我发现以下SO答案解决了这个问题,但它只能让它在外部地址而不是我的所有IP地址(localhost,外部地址等)上工作
<binding protocol="http" bindingInformation=":1904:your-machine-name" />
Run Code Online (Sandbox Code Playgroud) 我有一个WCF REST服务,它在使用IISExpress和这个url时调试并完美运行:
http://localhost:<portnumber>
Run Code Online (Sandbox Code Playgroud)
但是,由于各种原因,我需要它也可以使用IIS Express和这个URL:
http://<ip address>:<portnumber>
Run Code Online (Sandbox Code Playgroud)
当我最初尝试时,我收到HTTP错误400:错误的请求.然后我使用谷歌并最终在这里:连接到Visual Studio通过局域网调试IIS Express服务器
那个帖子问了一个完全相同的问题,答案让我在那里的一部分.遵循该主题中所有最优秀的建议,我做了以下工作:
编辑IISExpress Host.config:
1:打开%USERPROFILE%\ My Documents\IISExpress\config\applicationhost.config文件.
2:更改了所有这17行:
<binding protocol="http" bindingInformation="*:8080:localhost" />
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
<binding protocol="http" bindingInformation="*:8080:*" />
Run Code Online (Sandbox Code Playgroud)
(所有17条线路的端口号不同)
视觉工作室:
关闭,重新打开但以管理员身份运行
Windows防火墙:
添加了有问题的端口以允许传入连接
CMD:
netsh http add urlacl url=http://*:XXXXX/ user=Everyone
Run Code Online (Sandbox Code Playgroud)
执行该命令,其中XXXXX是端口号.
现在,当我开始调试并转到此URL时:
http://<ip address>:<portnumber>
Run Code Online (Sandbox Code Playgroud)
而不是"HTTP错误400:错误请求",我现在得到"HTTP错误503.服务不可用".
这是进步,因为浏览器现在至少打到了IISExpress,对吧?但我现在还不确定如何通过这个503错误.我一直在谷歌搜索该错误一段时间,但没有什么是我想要做的具体.
有任何想法吗?