361 361Sale WordPress Care by Openbyt · WordPress 修复与运维

排查 Cloudflare Error 521 的服务器响应测试方法

托尼屎大颗
,
排查 Cloudflare Error 521 的服务器响应测试方法

如果你的网站用了 Cloudflare CDN,有时候可能会遇到一个让人头疼的问题:访问页面时弹出一个 “Error 521 Web Server Is Down”。但这并不一定意味着服务器真的宕机了,很可能只是服务器没正确响应 Cloudflare 的请求。

第一步:检查服务器防火墙设置

最常见导致 Error 521 的原因之一,就是服务器防火墙屏蔽了 Cloudflare 的 IP 地址。首先要确保服务器允许 Cloudflare 的请求。

Cloudflare 会使用特定 IP 地址来连接你的网站,这些 IP 地址官方都有提供,你可以前往官方文档(Google 搜索“Cloudflare IP ranges”即可找到)查看完整列表。

常见做法:

sudo ufw status
sudo ufw allow from <Cloudflare IP 地址> to any port 80,443

第二步:检查 Web 服务是否正常运行

确保服务器上的 Web 服务(比如 Apache 或 Nginx)正在正常运行并且监听了正确的端口。

检查方式:

确保服务状态是 active (running),而不是停止或报错状态。如果是停止状态,尝试重启一下:sudo systemctl restart apache2

sudo systemctl restart nginx

第三步:手动测试服务器端口连通性

你可以直接用命令行工具 curl 或者 telnet,模拟 Cloudflare 的访问,查看服务器响应情况。

测试命令(以你的服务器 IP 替换下方的 <你的服务器IP>):

curl -I http://<你的服务器IP>
curl -I https://<你的服务器IP>

或使用 telnet 检查端口:

telnet <你的服务器IP> 80
telnet <你的服务器IP> 443

如果正常连接,你会看到服务器返回的信息,表明端口是开放且正常响应请求的。

第四步:绕过 Cloudflare 验证服务器响应(修改本地hosts)

另一种更直观的测试方式就是修改你本地电脑的 hosts 文件,直接访问服务器 IP,看看网站能否正常打开:

在 hosts 文件末尾加入:你的服务器IP 你的域名

例如:123.123.123.123 example.com

然后保存并刷新 DNS 缓存:

修改好后,用浏览器访问你的域名(此时会直接访问你的服务器 IP,绕开 Cloudflare),看能否正常显示网页:

第五步:检查 SSL 证书是否正常(如果用 HTTPS)

如果你网站启用了 HTTPS,也可能出现 Error 521 问题,这通常意味着服务器上的 SSL 配置有问题。

你可以在服务器端运行:

openssl s_client -connect 你的服务器IP:443

查看服务器是否正确提供了 SSL 证书。如果 SSL 握手失败,可能需要重新生成或修复证书。

第六步:检查服务器负载

有时候,服务器的 CPU 或内存占用过高,也可能导致 Cloudflare 连接超时,出现 Error 521。

用命令查看服务器负载:

top

如果发现 CPU 或内存使用接近100%,可能是服务器性能不足或存在某个进程占用过多资源,这时你需要优化配置或升级服务器。

最后一步:检查 Cloudflare 配置是否正确

在 Cloudflare 面板的“DNS”区域中,确认:

在“SSL/TLS”设置中,确保:

如果以上都检查了且服务器自身正常响应,Cloudflare 配置也正确,就基本排除服务器端的问题了。

总结

要排查 Error 521,重点就是确认服务器是否拒绝了 Cloudflare 的连接。检查防火墙是否拦了 Cloudflare,确保 Web 服务正常运行,端口开放无误,SSL 配置没出错。如果服务器响应正常,那问题多半出在 Cloudflare 设置。逐项排查,基本都能找出原因。

需要工程师帮你判断?

把症状、错误提示和最近改动发过来。

我们先判断风险、可能原因和安全下一步,再决定是否需要登录后台或服务器。

开始初诊

需要把这篇文章里的排查落到你的网站上吗?

把网址、错误提示、最近改动和影响范围发过来。我们先判断风险、备份状态和安全下一步;涉及数据库、支付、订单或安全问题时,不建议直接在生产站连续试错。

公开检测 · 无需注册 · 先判断风险 提交后会生成工单编号
初诊阶段不要提交后台、主机、数据库或支付账号密码。
紧急宕机、结账失败、安全跳转优先复核;普通问题通常 1 个工作日内回复。 初诊阶段不需要后台密码;需要权限时会单独确认最小权限和回滚方式。
提交前提醒先保留备份和错误提示,不要在生产站连续试错。