我在Visual Studio Pro 2013中运行一个非常基本的webAPI项目。它在我机器上的本地主机上运行得很好。然后,我尝试从另一台机器转到浏览器,转到:57571类似于我可以指向rails应用程序的方式,方法是将服务器的i地址后跟端口号。然后我得到了错误请求-无效的主机名HTTP400错误。请求主机名无效。
我还复制了这一点,在azure中放置了两台windows机器。一个正在运行的visual studio pro 2013。我运行相同的应用程序,它在本地运行得很好。然后,如果我尝试从另一个虚拟机(在同一虚拟网络上,我也可以ping服务器虚拟机)指向它,我仍然收到错误请求-无效的主机名HTTP Error 400。请求主机名无效。
请注意,我不关心自定义域名,我只想能够从另一台机器上使用IP地址运行这个应用程序。这个是可能的吗?(如果是这样的话,我做错了什么?)这是我尝试过的Didnt work for me This also didnt make it work
如何知道visual studio是以管理员身份运行的?
(我使用的是运行visual studio的windows Server 2012 R2。我关闭了两台机器上的防火墙)
发布于 2015-02-26 05:28:55
下面是我是如何让它工作的。
转到Visual Studio 2013中的C:\users\yourusername\Documents\IISExpress\config\applicationhost.config
将以下代码行添加到applicationhost.config made it to work
<binding protocol="http" bindingInformation="*:53676:*" />
这不起作用的地方
<binding protocol="http" bindingInformation="<clientsIPaddress>:53676:*" />
下面概述了此更改的application.config的Vs2015更新和精确位置。
VS 2015的文件路径如下所示。
正如丹尼尔提到的C:\Users\\{YourUsername}\Documents\Visual Studio 2015\Projects\\{ThisSolutionName}\\.vs\config\applicationhost.config
。
我该把它放在我的application.config里的什么地方?
下面是XML文件中的父节,您可以在其中找到绑定。
<system.applicationHost>
<sites>
<site name="WebSite1" id="1" serverAutoStart="true">
<bindings>
<binding protocol="http" bindingInformation=":8080:localhost" />
</bindings>
</site>
</sites>
</system.applicationHost>
这是一个没有改变applicationhost.config.中任何内容的新项目的粗略的161行
我没有意识到的是我以为客户端的IP地址是什么,实际上不是真的。原因是我在Azure中有一个从VNet到VNet的连接,连接这两个IP地址的网关在运行我的应用程序的网络上重新分配了客户端IP地址。因此,我必须查找它映射到的新IP地址,以便不使用*:port:*
策略
发布于 2016-02-23 07:36:30
我无法评论,但我想回答@EthanKeiser
Visual Studio 2015为每个解决方案都有一个单独的配置文件,您需要根据接受的答案进行更新。此文件位于:
C:\Users\\{UserName}\Documents\Visual Studio 2015\Projects\\{SolutionName}\\.vs\config\applicationhost.config
发布于 2020-05-28 20:37:48
在一个小时内遇到了相同的问题,我尝试了这里的所有与此问题相关的方法,但修复它的方法是以管理员身份运行Visual Studio。否则我会一直收到Unable to connect to web server 'IIS Express'
错误,这会把你引向错误的方向。
https://stackoverflow.com/questions/28699538
复制相似问题