HTTP返回状态码:520 Unknown Error

520 Unknown Error是Cloudflare 会用的未知错误,是Cloudflare定义的HTTP返回状态码,属于非官方状态码。

HTTP状态码

HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。它由 RFC 2616 规范定义的,并得到 RFC 2518、RFC 2817、RFC 2295、RFC 2774 与 RFC 4918 等规范扩展。所有状态码的第一个数字代表了响应的五种状态之一。所示的消息短语是典型的,但是可以提供任何可读取的替代方案。 除非另有说明,状态码是HTTP / 1.1标准(RFC 7231)的一部分。[1]

HTTP状态码的官方注册表由互联网号码分配局(Internet Assigned Numbers Authority)维护。[2]

微软互联网信息服务 (Microsoft Internet Information Services)有时会使用额外的十进制子代码来获取更多具体信息,[3]但是这些子代码仅出现在响应有效内容和文档中,而不是代替实际的HTTP状态代码。

520 Unknown Error

Cloudflare 会用的未知错误。

常见原因

520 错误本质上是当原始服务器返回意外内容或无法容忍/解释的内容时的“全面”响应(协议违例或空白响应)。

虽然 520 错误可以由非常独特和奇怪的边缘情况触发,但它们通常是在以下情况下引起的:

+ 连接重置(在 TCP 握手成功之后)
+ 标头超过 CloudFlare 的标头大小限制(超过 8kb)
+ 来自原始服务器的响应为空
+ 无效的 HTTP 响应
+ HTTP 响应缺少响应标头
+ 如果在托管网站的 Web 服务器上确认了上述任何情况,那么建议向主机提供商咨询以获得有关 Web 服务器配置的帮助,从而避+免其他中断和错误。

520 错误通常在第 7 层,即应用层引起。这意味着,520 错误是应用程序响应差而导致的。速率限制或过滤请求(例如,通过连接 IP 或流量/频率)有时会导致应用程序问题。

故障排除

如果是因为使用了Cloudflare的服务所造成的问题,可以采用下面的解决方案:

一、如果是Cloudflare的速率限制导致了此问题,则需要将Cloudflare的 IP 加入白名单。 可在以下位置找到 Cloudflare IP 范围: 此处.

二、如果是用户直接发送给原始服务器的请求通过 Cloudflare造成的影响,可以联系Cloudflare的客服寻求技术支持,需要提供 HAR (HTTP 存档文件)。 HAR 文件提供有用的信息源,以比较原始服务器返回的响应标头,而 CF 代理请求(对确认标头响应是否太大非常有用)。

提交支持请求时,请提供:

+ 重现错误的步骤
+ HAR 文件
+ 所示错误的 rayID

参考资料:

HTTP状态码

错误 520:Web 服务器返回一个未知错误

最后修改:2019 年 06 月 03 日 09 : 47 AM
如果觉得我的文章对你有用,请随意赞赏

发表评论