【发布时间】:2018-05-17 04:56:01
【问题描述】:
我的应用在本地运行良好,但在 Azure Web 应用上部署时出现错误:
The specified CGI application encountered an error and the server terminated the process.
我的应用是没有 wwwroot 文件夹的 .NET Core 2.0 Web API。我检查了this question,解决方法对我不起作用,它与不同的 .NET Core 版本有关。我的应用程序从字节数组创建X509Certificate2 的实例,我很确定它在这里失败了。我需要动态管理 X509Certificates - 不能将证书上传到 Web App。
我也在Microsoft Docs:
早期 Kestrel 版本的一个已知问题可能会导致 ASP.NET 托管在应用服务中的 Core 1.0 应用间歇性停止 回应。您还可能会看到以下消息:“指定的 CGI 应用程序遇到错误,服务器终止了 过程。”
此问题已在 Kestrel 版本 1.0.2 中得到修复。这个版本 包含在 ASP.NET Core 1.0.3 更新中。为了解决这个问题, 确保更新应用依赖项以使用 Kestrel 1.0.2。 或者,您可以使用描述的两种解决方法之一 在博客文章 ASP.NET Core 1.0 应用服务 web 中的慢速性能问题中 应用程序。
我相信我使用来自 nuget 包的最新版本的 Kestrel 依赖项:
<PackageReference Include="Microsoft.AspNetCore.All" Version="2.0.0" />
我还尝试重新创建 Web 应用程序以确保没有垃圾,并且我使用最新的所有内容。我该如何解决?有什么想法吗?
【问题讨论】:
-
您是否尝试过打开诊断日志并从那里查看?我希望您会在那里找到一些未处理的异常。详细的错误日志中甚至应该有一些东西(不确定是否必须先打开它)。甚至 Log Stream 也可能提供一些东西。
-
查看wiki了解一些调查步骤。
-
我有时会出现这个错误,.net core 2 azure app,然后它神秘地消失了。我的代码正在对 sql server 进行 EFCore 调用;没什么特别的。
-
有同样的问题。我们的一位客户看到了它,但我们没有。
-
有同样的问题。我开始认为这与我从数据库中提取并保存到内存列表中的行数有关。本地没有问题,但在服务器上出现问题。
标签: c# asp.net azure asp.net-core azure-web-app-service