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

时间:2020-02-18 09:12:26

标签: asp.net-core iis-8 asp.net-core-3.0

我刚刚将 ASP.NET Core 2.2 Web应用程序升级到3.0。它可以很好地构建和部署。问题是当我从我们的 IIS 服务器运行它时。作为 Core 2.2 Web应用程序,它运行得很好,但是由于升级到 Core 3.0 ,现在失败了。

当我从命令行启动Web应用程序时,没有报告的错误。

enter image description here

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

enter image description here

该应用程序随后失败,并显示 HTTP 500 错误。这是 IIS 日志条目。

enter image description here

我们在 IIS 8.5.9600.16384

中使用了Windows Server 2012 R2

该应用似乎可以正常启动,但随后失败,并显示 HTTP 500 错误。有没有其他人看到过这个或类似的东西?有什么想法可以诊断/解决问题吗?

更新

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

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

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

enter image description here

我看不到是什么原因引起的。

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

您将检查web.config“ aspNetCore”

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

也许proccessPath是错误的。

如果不能解决问题,请写入日志步骤step startup.cs。 也许在startup.cs中抛出错误

答案 2 :(得分:0)

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

没有明显的错误产生,一切似乎都很好。正是在该应用程序尝试进​​行身份验证时,它才失败。现在都在工作。