我有一个ASP.NET Core 1.0应用程序已成功部署并在我们的pre-prod服务器上运行了几个月。今天我尝试使用本文作为指南将网站部署到我们的生产服务器: https://docs.asp.net/en/latest/publishing/iis.html
底线是我们无法解决此错误:
HTTP Error 502.5 - Process Failure
Common causes of this issue:
* The application process failed to start
* The application process started but then stopped
* The application process started but failed to listen on the configured port
我们尝试了本文中列出的想法,但仍然没有运气: ASP.NET Core 1.0 on IIS error 502.5
你如何调试502.5错误,以找出失败的实际原因?
正在创建应用程序的日志文件,但不幸的是它们是空的。 Web服务器的事件查看器包含以下条目:
Process was created with commandline 'D:\Applications\PVP\UserInterface.exe' but failed to get the status, errorCode = 0x80070005
非常感谢任何帮助!托里。
答案 0 :(得分:3)
尝试隔离问题是服务器(IIS)还是应用程序。通过直接查找和运行应用程序来做到这一点。找到您的web.config并运行该过程。
对于DLL,这是:
dotnet MyApp.dll
对于EXE,这是:
MyApp.exe
对你而言,这可能意味着直接运行D:\Applications\PVP\UserInterface.exe
。
答案 1 :(得分:2)
我一直在使用.NET Core 2.0网站苦苦挣扎,一旦我意识到IIS需要服务器上的web.config,我就过去了。
这是我的文件,我的关键元素是processPath和arguments。
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet"
arguments=".\My App.dll"
stdoutLogEnabled="true"
stdoutLogFile=".\logs\stdout" />
</system.webServer>
</configuration>