gpt4 book ai didi

azure - Azure 上的 .NET Core 2.0 导致 502.3 CGI 错误

转载 作者:行者123 更新时间:2023-12-02 06:47:32 25 4
gpt4 key购买 nike

过去几天,我试图找到以下错误消息的答案,该错误消息困扰了我在 Azure Web App 托管上的 .NET Core 2.0 应用程序:

This error occurs when a CGI application does not return a valid set of HTTP headers, or when a proxy or gateway was unable to send the request to a parent gateway. You may need to get a network trace or contact the proxy server administrator, if it is not a CGI problem.

因为花了几天时间才找到答案,所以我在这里发布我的解决方案。

除了CGI错误之外,我还在错误日志中发现了以下错误代码:0x80072ee2。这表明请求超时。但是,Azure 的超时限制为 4 分钟,错误在大约 1.5 分钟后出现。该应用程序设计为在 4 分钟内处理请求,因此不应发生超时错误。

最佳答案

我在阅读以下页面后找到了解决方案:https://learn.microsoft.com/en-us/aspnet/core/fundamentals/servers/?tabs=aspnetcore2x 。本页介绍了 IIS 之间的关系并对 Kestrel 引擎进行了解释。虽然Web应用程序托管应该与IIS托管不同,但我怀疑Azure使用了大量IIS模块,因为有很多相似之处。

github上的以下问题也是解决我的问题的一部分:https://github.com/aspnet/IISIntegration/issues/311 。本期解释了除了 IIS 之外,Kestrel 也有 2 分钟的超时限制。最初寻找解决方案时,我完全错过了这一点信息。更改 Kestrel 服务器的超时(可以在以下页面找到:https://learn.microsoft.com/en-us/aspnet/core/hosting/aspnet-core-module)解决了我的问题,让请求在 2.5 分钟内运行。

后来我使用 Chrome 开发者工具检查了超时显示之前的确切持续时间,看起来正好是 2 分钟,这应该是更早的线索,表明我的问题是 Kestrel 服务器超时。

关于azure - Azure 上的 .NET Core 2.0 导致 502.3 CGI 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46023419/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com