在将.NET Core 2.1应用程序部署到我的服务器之后,当我访问该页时,会出现以下错误:
HTTP错误502.5-进程失败
按照微软在同一个页面上的“总是有用”链接(咳嗽),我查看了事件视图日志,并指出:
具有物理根的应用程序'machine/webroot/apphost/blah.com'
'd:\inetpub\vhosts\blah.com\httpdocs\'无法用启动进程
命令行“dotnet.\blah.dll”,错误代码='0x80070002:0。
这条信息不仅没用,而且完全无关紧要。我尝试启用web应用程序的web.config登录:
<aspNetCore requestTimeout="23:00:00" processPath="dotnet" arguments=".\blah.dll" forwardWindowsAuthToken="false" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" startupTimeLimit="3600" />
奇怪的是,在我授予IWPD进程权限之前,没有在日志目录中创建任何文件。它创建的文件不在指定的stdout目录中,而是在父日志目录中。它们也是空的。
我使用以下命令行运行了Web应用程序:
dotnet.\blah.dll
应用程序似乎在运行,我可以在屏幕上看到一些消息,但在访问站点时仍然出现502.2错误,日志中没有其他信息。我遵循了ASP.NET Core 2.1的故障排除步骤,它提到了以下内容:
如果向应用程序发出请求时出现错误,请发出请求
到Kestrel监听的主机和端口。使用默认主机和
发布,请求
http://localhost:5000/
. 如果应用程序响应
通常在Kestrel端点地址,问题更可能
与反向代理配置相关,并且在
应用程序。
我从命令行运行了Web应用程序,并尝试使用
http://localhost:5000
. 我终于可以访问该站点,但我仍然通过IIS获得相同的502.2错误。
很明显,IIS和红隼之间没有交流。我不明白为什么有两个Web服务器,以及如何让它们彼此通信。