Troubleshooting
“请取消阻止 challenges.cloudflare.com 以继续”:原因与解决方法
Cloudflare 页面为什么提示取消阻止 challenges.cloudflare.com?在浏览器和网络中如何解决,以及它对爬虫和自动化程序意味着什么。
作者 ZeroCaptcha Engineering2 分钟阅读发布于
“请取消阻止 challenges.cloudflare.com 以继续”(英文原文为 “Please unblock challenges.cloudflare.com
to proceed”)表示您访问的网站受 Cloudflare 安全验证保护,而您的浏览器无法从
challenges.cloudflare.com(Cloudflare 提供验证的域名)加载这项验证。拦截它的通常是您这一端的东西:
广告或脚本拦截器、隐私扩展、DNS 过滤、防火墙或 VPN;也可能像 2025 年 11 月 18 日那样,是 Cloudflare
自身发生了故障。解决方法是放行 challenges.cloudflare.com 后刷新页面。对自动化程序而言,同样的提示
意味着验证脚本被自动化程序自己的配置拦截了。
这条提示从何而来
这句话出现在 Cloudflare 的全页验证页面上,也就是网站的 Cloudflare 规则在显示页面内容之前先展示的
“请稍候…”(Just a moment…)页面。该页面运行 Cloudflare 的验证平台,Cloudflare 文档称它与
Cloudflare Turnstile(部分网站嵌入在表单中的验证组件)是“同一套底层技术”,两者都从
challenges.cloudflare.com 加载。一旦无法访问这个域名,验证就无法运行,页面便会请您取消阻止它。
中文网络上流传的译文有“请取消阻止 challenges.cloudflare.com 以继续”和“请取消阻止 challenges.cloudflare.com 后继续”两种,均来自用户截图和博客,并非 Cloudflare 官方文档; developers.cloudflare.com 上没有任何页面收录这句话(2026 年 9 月 30 日检索)。2025 年 11 月 18 日 Cloudflare 发生故障时,许多大型网站的验证页面同时显示了这条提示。Cloudflare 的事后分析报告指出, 故障期间 Turnstile 无法加载,故障持续时间为 UTC 11:20 至 17:06。
如今的验证页面换了一种说法。根据其当前脚本(2026 年 9 月 30 日查看),简体中文页面显示
“浏览器扩展或网络配置不兼容”,并请您“确认您的网络或防火墙设置是否阻止了设备访问
‘challenges.cloudflare.com’”。表单中的 Cloudflare Turnstile 组件遇到同样情况时报告错误代码
200500(“Iframe load error”,即 iframe 加载失败),官方给出的处理办法是检查
challenges.cloudflare.com 是否被阻止。
普通用户的解决方法
请按顺序尝试,每一步之后刷新页面:
- 检查拦截类扩展。 Cloudflare 文档指出,广告拦截器和内容拦截器可能阻止验证脚本正常加载;
脚本拦截、防指纹、Canvas 拦截等隐私扩展也可能干扰验证。请在扩展中放行
challenges.cloudflare.com,或对该网站关闭扩展。 - 启用 JavaScript 和 Cookie。 验证需要两者;关闭 JavaScript 时,页面会提示启用 JavaScript 和 Cookie 后继续。
- 检查 DNS 过滤。 Pi-hole、NextDNS、AdGuard DNS 或路由器自带的过滤功能可能会为整个网络屏蔽该域名。
请放行
challenges.cloudflare.com及其子域名。Cloudflare 在 2026 年 7 月新增了hagen.challenges.cloudflare.com和brunhild.challenges.cloudflare.com两个主机名, 并要求一并放行。 - 暂时关闭 VPN 或代理。 Cloudflare 将 VPN 和代理列为验证失败的原因之一。
- 检查公司或学校的防火墙。 按域名过滤的网络需要把
challenges.cloudflare.com加入白名单, 这只能由网络管理员修改。 - 检查系统时间。 设备时间不正确会导致验证失败,Cloudflare 会为此显示“设备时间不正确”。
- 使用 Cloudflare 的检测页面。 打开
debug.challenges.cloudflare.com,可以检查您的浏览器和网络 能否运行验证。
如果以上方法都无效,而且许多网站同时出现这个问题,那么很可能是 Cloudflare 自身的故障。 在进一步修改设置之前,请先查看 Cloudflare 状态页。
网站管理员的解决方法
如果访客在您的网站上看到这条提示:
- 内容安全策略(CSP)。 在
script-src和frame-src中允许https://challenges.cloudflare.com, 或者采用 Cloudflare 推荐的基于 nonce 的方式;Turnstile 支持strict-dynamic。 - 直接从 Cloudflare 加载脚本。 Cloudflare 要求必须从其文档给出的确切地址获取
api.js, 代理或缓存该文件会在后续更新发布时导致 Turnstile 失效。 - 移动应用中的 WebView。 官方列出的原因包括禁用了 JavaScript、缺少 DOM 存储或 Cookie 支持、
无法访问
challenges.cloudflare.com,以及会话过程中 User-Agent 发生变化。
对自动化程序意味着什么
在您有权进行自动化的网站上,爬虫和测试套件也会遇到同样的失败,而原因往往出在自动化程序自身:
- 请求拦截。 Playwright 或 Puppeteer 中常见的优化做法是中止所有第三方域名的请求,或中止所有
脚本和图片以节省流量,这也会把验证脚本一并拦截。请放行
challenges.cloudflare.com及其子域名。 - 出口网络受限。 位于 DNS 过滤、公司代理或带有域名白名单的云防火墙之后的爬虫同样无法访问
challenges.cloudflare.com,需要把它加入白名单。 - 完全不执行 JavaScript。 curl、requests、Scrapy 等 HTTP 客户端从不运行验证,因此根本看不到这条
提示:它们收到的是验证页面的 HTML,状态码为 403,并带有
cf-mitigated: challenge响应头。 放行域名并不能改变这一点;页面需要的是能通过验证的浏览器,或者由浏览器获得的cf_clearanceCookie。
下面的 Playwright 示例拦截图片和字体,同时放行 Cloudflare 的验证:
import { chromium } from "playwright";
const browser = await chromium.launch();const page = await browser.newPage();await page.route("**/*", (route) => { const request = route.request(); const host = new URL(request.url()).hostname; const cloudflare = host === "challenges.cloudflare.com" || host.endsWith(".challenges.cloudflare.com"); if (!cloudflare && ["image", "font", "media"].includes(request.resourceType())) return route.abort(); return route.continue();});await page.goto("https://shop.example.com/");console.log(await page.title());await browser.close();放行域名只是让验证能够运行,并不能让自动化浏览器通过验证。Cloudflare 明确说明,Selenium、Puppeteer、 Playwright、Cypress 等浏览器自动化框架不支持在生产环境中完成验证。如果验证能够运行却仍然无法通过, 您面对的就是验证本身,而不是被拦截的域名:
- 对于表单中的 Cloudflare Turnstile 组件,验证码识别 API 可以根据页面的 sitekey 返回令牌,参见 Cloudflare Turnstile 识别服务(英文)。
- 对于全页验证(“请稍候…”),页面需要的是
cf_clearanceCookie。 ZeroCaptcha 的验证页任务通过您自己的代理完成验证,并返回该 Cookie 及其绑定的 User-Agent。 参见 Cloudflare 验证页识别服务 和 cf_clearance Cookie 详解(均为英文)。
如果验证通过后页面仍然反复出现,请参阅 Cloudflare 验证循环的原因(英文)。请只对您有权自动化的网站进行 自动化操作,参见负责任的验证码自动化(英文)。
本文的英文原版包含同样的内容。
参考资料
- Cloudflare 验证:验证无法通过的问题 与支持的浏览器 (2026 年 9 月 30 日查阅)。
- Cloudflare Turnstile:客户端错误代码,
关于
200500(2026 年 9 月 30 日查阅)。 - Cloudflare Turnstile 更新日志,2026 年 7 月 22 日条目(2026 年 9 月 30 日查阅)。
- Cloudflare Turnstile:内容安全策略 与客户端渲染 (2026 年 9 月 30 日查阅)。
- Cloudflare 验证:识别验证响应 (2026 年 9 月 30 日查阅)。
- Cloudflare 关于 2025 年 11 月 18 日故障的事后分析 (2026 年 9 月 30 日查阅)。
- 验证页面当前的简体中文文字于 2026 年 9 月 30 日读取自 Cloudflare 线上验证脚本。旧提示的中文译文来自 用户截图和博客,例如知乎的这篇文章。
The team that builds and runs the ZeroCaptcha API. Articles are drafted with AI tools, then checked against the API's code and the primary sources each one cites.