Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure web应用程序超时错误,响应为500/502_Azure_Asp.net Core_Azure Webapps - Fatal编程技术网

Azure web应用程序超时错误,响应为500/502

Azure web应用程序超时错误,响应为500/502,azure,asp.net-core,azure-webapps,Azure,Asp.net Core,Azure Webapps,背景: .net core 2.2 web应用程序 使用在Azure web应用程序中部署 没有涉及DB。应用程序正在尝试从keyvault读取一些信息 发布复制步骤 应用程序在本地工作 使用Azure ARM部署应用程序 成功部署后,导航到web应用程序会导致502和500错误。我已经附上了截图 到目前为止我所尝试的 打开-我没有发现任何有趣的东西 我已经试过了,还有其他几个答案——运气不好 重新启动web应用程序也无济于事。但是,只要我更改任何azure应用程序设置,该应用程序就会

背景:

  • .net core 2.2 web应用程序
  • 使用在Azure web应用程序中部署
  • 没有涉及DB。应用程序正在尝试从keyvault读取一些信息
发布复制步骤

  • 应用程序在本地工作
  • 使用Azure ARM部署应用程序
  • 成功部署后,导航到web应用程序会导致502和500错误。我已经附上了截图
到目前为止我所尝试的

  • 打开-我没有发现任何有趣的东西
  • 我已经试过了,还有其他几个答案——运气不好
  • 重新启动web应用程序也无济于事。但是,只要我更改任何azure应用程序设置,该应用程序就会开始工作——即使将网站\u HTTPLOGGING\u RETENTION\u天数的值从2天更改为5天,该应用程序也会运行

请告知如何排除此错误?

502网关错误响应与传统的500错误不同,这主要是一个代码问题,这使得排除根本原因变得更加困难

基本上,HTTP 502坏网关服务器错误响应代码表示web服务器(在我们的场景中为IIS)在充当网关或代理时从上游服务器接收到无效响应。发生这种情况可能有多种原因-例如,无法连接到上游服务器,上游服务器没有响应,或者上游服务器响应时间过长(超时)。因此,充当网关或代理的服务器将报告状态为502。502很难排除故障的原因是,根本原因可能变化很大,并且取决于实际的应用程序框架,如Asp.Net、PHP、Java等

对于ASP.NET核心应用程序,正如我们所知,为了在IIS中承载应用程序,我们需要安装AspNetCoreModule。它实际上是IIS中的一个本机模块,充当dotnet核心应用程序的反向代理,这就是为什么我们可能会遇到ASP.NET核心应用程序的502错误

虽然502错误也可能由底层平台问题(如磁盘/存储问题)引起,但在大多数情况下,我们需要关注上游服务器中运行的组件(根本原因),IIS日志将为我们提供有关如何缩小问题范围的信息

现在,假设我们在访问ASP.Net核心应用程序时遇到502错误,子状态代码可能没有足够的帮助。首先,我们可以检查IIS日志,并通过sc-win32-status代码验证根本原因。或者,我们可以启用失败请求跟踪以了解更多详细信息

上面的日志为我们提供了两个导入信息,错误来自AspNetCoreModule,错误代码为2147954402。这意味着,502错误是由AspNetCoreModule触发的,它可能经历了一些无效响应。此外,我们可以使用err实用程序或visit计算2147954402只是WININET_E_超时。默认情况下,ASP.NET核心请求超时为2分钟,我们可以通过设置文件中的requestTimeout来更改它。有关ASP.NET核心配置的更多信息,请参阅《ASP.NET核心模块配置参考》

此外,我还要求您阅读asp.net core 2.2应用程序的疑难解答指南


希望能有所帮助。

应用程序是否有权限访问密钥库?而且,发布一些代码也不错。是的,该应用程序有权使用密钥库。正如我提到的,在当地一切都很好。你最后做了什么。我已经收到这封信好几天了。它刚刚开始在azure中发生。