首页 > 解决方案 > 由于 Heroku 的空服务器响应,Cloudflare 返回 520

问题描述

我多年来一直运行良好的 Rails 应用程序突然开始返回 Cloudflare 520 错误。具体来说,后端调用返回 520,而对前端子域的api.exampleapp.com命中工作正常。www.exampleapp.com

困难的部分是我的配置或代码都没有改变。Cloudflare 认为这是在 Heroku 服务器返回空响应时发生的。

> GET / HTTP/1.1
> Host: api.exampleapp.com
> Accept: */*
> Accept-Encoding: deflate, gzip
> 
{ [5 bytes data]
* TLSv1.2 (IN), TLS alert, close notify (256):
{ [2 bytes data]
* Empty reply from server
* Connection #0 to host ORIGIN_IP  left intact
curl: (52) Empty reply from server
error: exit status 52

在 Heroku 端,当我点击任何这些 url 时,我的日志似乎都没有注册请求。我还仔细检查了我的 SSL 设置(在安装在 Heroku 上的 Cloudflare 创建的原始证书),以防万一,它似乎是正确的并且没有过期。

我无计可施。该应用程序已经关闭了几天,用户在抱怨,尽管是付费客户,但两个客户服务团队都没有回应。我的开发运维知识相当有限,因此,非常感谢任何帮助或线索!

标签: sslherokucloudflare

解决方案


欢迎加入俱乐部:https ://community.cloudflare.com/t/sometimes-a-cf-520-error/288733 这似乎是 7 月下旬引入的 Cloudflare 问题,影响了数百个运行非常不同配置的站点。自首次报告该问题以来已近一个月,Cloudflare “修复”了两次,但它仍然存在。非常令人沮丧。


推荐阅读