社区提示 - 修复错误 520:Web 服务器返回未知错误

错误
尝试此社区提示中的建议,以协助修复“错误 520:Web 服务器正在返回一个未知错误”。

背景
520 错误本质上是一个笼统的响应,涵盖出现意外情况、源服务器由于协议违规而错误地解释或不容许某个请求或者空响应等情况。当连接已经在源 Web 服务器上开始,但请求并未完成时,就会发生 520 错误。出现这种情况最常见的原因是,某个程序、cron 作业或资源占用了超出预期的资源,导致服务器无法正常响应所有请求。当发生这种情况时,您会看到“错误 520:Web 服务器正在返回一个未知错误”。

快速修复方法

  1. 您的 Web 服务器或网络设备、任何感知 http 的设备(如防火墙、负载平衡器等)在 TCP 连接建立后重置了连接。有时,当 Web 服务器崩溃后,它会重置连接。与您的托管提供商一起检查 Web 服务器错误日志,查看在错误发生时是否有任何错误消息。

  2. Web 服务器返回了一个超出我们限制的无效响应。如果您的 Web 服务器返回的标头过多/过大,则通常会发生这种情况。例如,这种情况通常因返回过多 cookie 的失控脚本而引起。Code Igniter PHP 框架也有一些与此相关的已知错误。

  3. 当您与托管提供商进行对话时,请确保其在允许列表中添加了 Cloudflare IP

  4. 虽然错误 520 可能由独特且看似奇怪的极端情况触发,但通常由以下原因引起:连接重置(在成功 TCP 握手后)、标头超出 Cloudflare 标头大小限制(超过 8kb)、来自源站的空响应、无效的 HTTP 响应、HTTP 响应中缺少响应标头或存在多个 Content-Length 标头。

  5. 请注意,如果启用 Always Online,则该错误将触发 Always Online 页面。禁用 Always Online,然后检查错误是否消失或改变。如果是这样,请咨询相应的 521522 #CommunityTip。

  6. 如果该错误仍然发生,请在此站点上发布帖子并提供示例 URL 和 Ray ID,以及来自任何受影响用户的 traceroute 输出,复制 example.com/cdn-cgi/trace 的输出 - 用受影响域名替换 example.com。此外,准备两个 HAR 文件:一个文件详细介绍在网站上启用 Cloudflare 时的请求情况,另一个文件则详细介绍暂时禁用 Cloudflare 时的请求情况 - 请参见如何暂时停用 Cloudflare?如果 Cloudflare 支持需要帮助,这些 HAR 文件将有助于其对服务器响应进行比较。

精简阅读
https://support.cloudflare.com/hc/en-us/articles/115003011431#520error

背景资源
帮助中心
YouTube

研究问题
Google

如果您需要更多帮助
这个由其他 Cloudflare 用户组成的社区可能能够帮助您,登录 Cloudflare 并将问题发布到社区。当您在社区上发帖时,请确保尽可能多地包含以下信息:您看到的具体错误消息、发生这种情况的 URL、错误的屏幕截图以及重现错误的步骤。请说明您尝试了哪些故障排除步骤,以便我们为您提供帮助。

这是 Cloudflare 社区提示,要查看其他提示,请单击此处

Çevirme…traduzir…翻译…traducir…Traduire…Übersetzen…:greyg: 翻译此提示

FXWSCT 101819