我正在尝试在 Azure 上托管的 Windows Server 2016 实例上运行示例 ASP.NET5 MVC 应用程序。所有指标都显示应用程序在服务器上运行良好,但是当我尝试浏览 URL(使用服务器的主机名或公共 IP)时,我收到 404.NOT FOUND 错误。
- 这些端口在 Azure 和防火墙中打开。
- 该应用程序在 Microsoft.Net.Http.Server.Weblistener 上运行
- 运行时是 clr-1.0.0-beta5 x64。我已验证运行时已正确安装并正在使用中。
- 我已经从 VS2015 发布了应用程序并手动传输到服务器,我使用自动生成的命令“web.cmd”运行它,我得到一个简洁的输出:
info : [Microsoft.Net.Http.Server.WebListener] Start
info : [Microsoft.Net.Http.Server.WebListener] Listening on prefix: http://localhost:80/
Started
当我在本地开发人员机器上以完全相同的方式运行应用程序时,我得到完全相同的输出,并且它可以浏览 localhost:80 以访问网站。
在我看来,这表明
- 应用程序正常运行
- 端口配置正确(当我关闭网络服务器时,我得到一个不同的错误 ERR_CONNECTION_TIMED_OUT 而不是 404)
我的猜测是 WebListener 服务器有问题,没有正确地将传入请求路由到我的应用程序,或者我的 MVC 代码可能有问题(尽管它在 localhost 上运行良好)。
对于一个相当模糊的问题,我很抱歉,我对所有想法和意见持开放态度,请随时提出更多问题,以便我提供更多信息。
干杯,尼科