HTTP 500 错误启动 ASP.NET 3.0 应用程序

HTTP 500 error launcing ASP.NET 3.0 application

我刚刚将 ASP.NET Core 2.2 Web 应用程序升级到 3.0。它构建和部署良好。问题是当我从 IIS 服务器转到 运行 它时。作为 Core 2.2 网络应用程序,这 运行 非常好,但现在升级到 Core 3.0 后失败了。

当我从命令行启动网络应用程序时,没有报告任何错误。

当我从浏览器启动应用程序时,Windows 日志表明应用程序已正确启动。

应用随后失败并出现 HTTP 500 错误。这是 IIS 日志条目。

我们正在使用 Windows Server 2012 R2IIS 8.5.9600.16384

该应用似乎可以正确启动,但随后失败并出现 HTTP 500 错误。有没有其他人看过这个或类似的东西?任何想法如何诊断/解决问题?

更新

我已经通过 w3wp.exe 进程将 VS 2019 调试器附加到已部署的应用程序,它甚至没有命中任何中间件(我在 Startup.cs 中的 Startup() 处有一个断点) .

我试过更改应用程序池设置,例如身份,.NET 版本但无济于事。

当我从 Web 服务器启动网站时,我收到以下错误消息,但实际上并没有告诉我任何信息。

我看不出是什么导致了这个问题。

.NET Core 3.0默认使用进程内托管模型。您可能需要升级 .NET Core Hosting Bundle.

你会检查web.config"aspNetCore"

<aspNetCore processPath="dotnet" arguments=".\Api.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" />

可能proccessPath是错误的。

如果没有解决问题,请写入日志步骤 startup.cs。 可能会在 startup.cs

中抛出错误

在对构建生成的构建工件与部署的应用程序进行调查和比较后,我发现 appsettings.json 没有被部署。不知道这是如何或何时开始失败的,但它导致应用程序生成 HTTP 500 错误消息。我们应用程序的 Azure ADB2C 设置包含在此文件中,因此它在尝试进行身份验证时崩溃但找不到身份验证设置。

没有产生明显的错误,一切似乎都在正常加载。就在应用程序试图验证它失败的时候。现在都在工作。