首页 > 解决方案 > https 在我的服务器上导致 cloudflare 错误 524

问题描述

我一直在为此花费数小时的研究,似乎无法找到正确的解决方案,甚至无法理解问题本身。

场景:我有多个 ubuntu 服务器,每个服务器运行一个 apache,通过 apache-vhost 托管多个站点。我有一个 CloudFlare 免费计划并将其配置为仅执行灵活的 SSL/TSL页面规则以强制 HTTPS 访问。

问题:有些客户端得到 Cloudflare 524 错误,而有些则很好。

测试/观察:

  1. 如果我禁用页面规则强制 HTTPS,一切都很好。所以这应该指向 https 问题,但是为什么 https 在某些客户端上有效,而不是在其他客户端上?

  2. http请求已正确记录在每个虚拟站点的访问日志中,我自己尝试过,它实际上记录了我的请求,但我仍然收到错误 524。

  3. 服务器没有超载,但我仍然收到错误 524。

  4. 增加了 mpm_prefork 设置,仍然是错误 524。

  5. 通过 iptables 禁止除 cloudflare ips 之外的任何 IP,仍然是错误 524

  6. 禁用多个虚拟站点,仍然是错误 524

我目前不知道如何理解这个问题来解决它。我已经进行了数周的研究,但所有提到这个特定错误的线程都不适合我的情况。帮助!

标签: apacheubuntu-16.04cloudflare

解决方案


524 错误意味着 cloudflare 从您的服务器获得了超时。

尝试查看您的日志以查找可能超过 cloudflare 超时阈值(可能为 100 秒)的长时间运行页面。

看起来像客户端的问题实际上只是随机超时对不同客户端的影响不同的性质。

http://windowsbulletin.com/how-to-fix-cloudflare-error-524-a-timeout-occurred/


推荐阅读