我有一个Web应用程序,其行为取决于主机名。要在本地PC上对其进行测试,我将需要安排IISExpress使用我在Project-> Properties-> Debug中提供的特定名称(例如 http://mywebsite:58981/ 。
但是在开始调试时,弹出消息“无法连接到Web服务器IIS Express”。 Windows 10活动中心向我提醒了一条消息,单击该消息后,我从IIS Express收到此弹出窗口:
我尝试了其他用户的建议,例如删除包含applicationhost.config的.vs文件夹,然后重新启动了解决方案,但仍然无法正常工作。我什至确保IIS Express不会再运行其他任何东西:
但是,如果我将应用程序URL更改回 http://localhost:58981/ ,删除了 .vs 文件夹,然后打开解决方案,我可以照常进行调试。< / p>
所以我的问题是:如何将URL从 localhost 更改为其他名称?我正在运行Visual Studio 2019,而Windows 10是1903版。
答案 0 :(得分:1)
第一个建议是以管理员身份运行Visual Studio。
修改IIS Express配置文件,转到编辑文件:
\{project folder}\.vs\{yourWebApplicationName}\config\applicationhost.config
您将找到类似的内容(找到您的应用程序名称):
<site name="WebApplication3" id="2">
<application path="/" applicationPool="WebApplication3 AppPool">
<virtualDirectory path="/" physicalPath="C:\Users\Administrator\source\repos\WebApplication3\WebApplication3" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:53717:localhost" />
<binding protocol="https" bindingInformation="*:44325:localhost" />
</bindings>
</site>
添加<bindings>
,然后添加另一行并添加您自己的IP,端口号:
<binding protocol="http" bindingInformation="*:53717:mywebsite" />
转到C:\Windows\System32\drivers\etc
编辑hosts
文件(复制到另一个位置,然后编辑并复制回去):
# localhost name resolution is handled within DNS itself.
127.0.0.1 mywebsite
# ::1 localhost
然后,您可以使用http://mywebsite:53707
调试应用程序,可以在app.UseHttpsRedirection();
中注释掉Configure
来处理HTTP请求。