文章 ·
chatgpt.com、claude.ai 一直弹 Cloudflare 人机验证:原因和自查步骤
打开 chatgpt.com 或 claude.ai,页面停在「Just a moment…」转圈,或者一个「Verify you are human」勾选框,点完又回到原处,这是两家网站前面的 Cloudflare 在做人机验证。按 Cloudflare 的排查文档,反复验证的常见原因有三类:浏览器没能完成验证(脚本被扩展拦截、Cookie 或 JavaScript 被禁用、系统时间不准),验证途中出口 IP 变了,或者 Cloudflare 认为这次访问像自动程序(例如 IP 信誉差)。前两类可以自己排查;至于验证开不开、对哪些流量更严,由 OpenAI、Anthropic 在 Cloudflare 里设置,这些设置没有公开。
这是 Cloudflare 的验证页
两家网站都接在 Cloudflare 后面。我们在 2026 年 10 月 1 日用命令行工具 curl 直接请求两个首页,都返回 403,响应头带 cf-mitigated: challenge。按 Cloudflare 的说明,这个头表示返回的是验证页。curl 不能运行 JavaScript,本来就在 Cloudflare 不支持的环境里,所以这只说明验证确实开着,不代表普通浏览器也会被拦。
Cloudflare 的验证页文档把整页验证分成三种,由网站方在规则里选:
- 非交互式验证:浏览器自动运行一段 JavaScript,通常不到 5 秒,访客只需等待。
- 托管验证(Managed Challenge):Cloudflare 按浏览器信号决定出哪种验证。大多数真人会自动通过,页面显示「Successful」;检测到非人类特征时才要求点一下。Cloudflare 建议多数规则用这一种。
- 交互式验证:必须点击才能通过。
还有一种是 Turnstile:不拦整页,而是嵌在登录、注册表单里的小部件,多数时候自动完成,必要时显示一个复选框。Cloudflare 说明,它和验证页用的是同一套底层机制。
通过验证后,浏览器会存下一个 cf_clearance Cookie,之后的请求带着它就不再验证。有效期由网站方在 Challenge Passage 里设置,默认 30 分钟。按 Clearance 说明,开了 Precursor 功能的网站会在整个会话里持续评估,判断会话可疑时,Cookie 没过期也可能要求重新验证。
Cloudflare 公开了哪些判断依据
Cloudflare 的排查文档说,真人访客被意外要求验证,通常是某项安全功能标记了这次请求,来源包括:IP 的风险分数高;IP 信誉差,即这个 IP 有可疑活动的历史;流量看起来像自动程序;网站方的 WAF 自定义规则,可能针对特定地区或 User-Agent;浏览器完整性检查。
其中自动程序的判断靠机器人分数:每个请求 1 到 99 分,1 表示几乎确定是自动程序,99 表示几乎确定是真人。模型的输入是请求的各种特征,Cloudflare 列出的有请求头、会话特征和浏览器信号;缺少 User-Agent 的请求会直接得 1 分。各项的具体权重没有公开。
为什么会一直循环
Cloudflare 的验证排查页说,循环只在检测到强烈机器人信号的特定情况下出现,列出的原因是:
- 网络不稳定,验证没能完成;
- 浏览器设置或扩展拦了验证需要的脚本,例如广告拦截、脚本拦截、防指纹类扩展;
- 浏览器不受支持或太旧;
- JavaScript 被禁用;
- 检测误判:怀疑是机器人行为,就反复要求验证。
文档其他几处还提到:
- 访客必须允许 JavaScript 和 Cookie,否则任何一种验证都过不了(出处)。
- 系统时钟不准会让验证超时或失败(Turnstile 错误码 110600、200100)。这里指电脑时间本身不准,不是时区设置。
- 从一个 IP 收到验证、从另一个 IP 提交,验证无效,可能陷入循环(出处)。按这条推断,代理软件在验证过程中自动切换线路或轮换出口,就可能碰上。
- 修改 User-Agent 或 Canvas、WebGL 的扩展,Cloudflare 明确不支持;开发者工具里的设备模拟、User-Agent 覆盖也会改变浏览器信号。
- IP 信誉差的情况,常见于多人共用的 VPN 和公司代理。
自己能查什么
OpenAI 帮助中心的登录排查页有一节专讲 Cloudflare 验证循环(「Checking your browser…」),和 Cloudflare 的建议基本一致。按从易到难:
- 用无痕窗口,或新建一个浏览器配置文件再试,排除扩展和缓存的影响。
- 暂时停用广告拦截、隐私、脚本拦截类扩展。OpenAI 还提到,Cookie 同意弹窗和 Cookie 管理工具也可能挡住验证。
- 允许 chatgpt.com、openai.com、auth.openai.com 的 Cookie(包括第三方 Cookie)和 JavaScript。
- 把浏览器更新到最新版,系统时间设为自动同步;可以用 Cloudflare 的 Turnstile 检测页测一次兼容性。
- 关掉开发者工具里的设备模拟和 User-Agent 覆盖。
- 换一个网络对照,例如从公司 Wi-Fi 换到手机流量。换了就好,问题多半在原来那个网络的出口 IP。OpenAI 和 Cloudflare 都建议排查时暂时关掉 VPN 或代理。
- 在公司、学校等受管网络上,OpenAI 说可能需要网管放行 Cloudflare 的验证。
用 IP 判官看出口
验证循环和 IP 有没有关系,可以在首页或 ChatGPT、Claude 专项页的「浏览器与连接检查」里看:
- 「访问 ChatGPT 的 IP」「访问 Claude 的 IP」两行,是直接问 chatgpt.com、claude.ai 得到的出口,也就是 Cloudflare 看到的 IP。看它的类型和风险名单:被标为代理 / VPN、命中滥用名单的地址,更可能落在 Cloudflare 说的「信誉差」一类。IP 判官查的是公开数据库和名单,不是 Cloudflare 自己的评分,两者不一定一致。
- 刷新几次,看这两行的 IP 变不变。出口频繁变化,就可能碰上「收到验证和提交验证不是同一个 IP」。
- 「自动化痕迹」一行:
navigator.webdriver为 true、User-Agent 和平台对不上、无头浏览器,都属于 Cloudflare 不支持的环境。 - 开着 Cloudflare WARP 时会有单独提示,见 开着 WARP,Claude、ChatGPT 看到什么。
IP 类型怎么判,见判定方法和住宅 IP、机房 IP 有什么区别;风险名单怎么扣分,见纯净度评分;其他信号见 Claude 验证的 6 个网络信号。
哪些只有网站方能改
Cloudflare 的说明写得很直接:访客遇到验证,Cloudflare 员工无法替你去掉,只有网站所有者能改设置。用哪种验证、对哪些地区或网络更严、机器人分数低于多少就验证、通过后多久不再验证,都是网站方的选择;Cloudflare 排查文档里的示例规则,就有按 ASN 拦截或验证 AWS、Google Cloud 流量的写法。OpenAI、Anthropic 用了哪些规则没有公开,所以从外部无法确定某个 IP 为什么被验证。
两家帮助中心能查到的:OpenAI 除了上面那节,另有一页说明「Sorry, you have been blocked」是 Cloudflare 的 IP 封锁,可能原因包括 VPN 和来自高风险地区的 IP,临时封锁过一段时间可能解除。Claude 帮助中心目前没有专讲 Cloudflare 验证的文章,登录出错时的排查步骤是:不要用 VPN、停用浏览器扩展、清除缓存和 Cookie。
都试过仍然循环,Cloudflare 建议记下验证页上的 Ray ID,抓一份 HAR(开发者工具里勾选 Preserve log)和控制台日志,交给网站方;Turnstile 小部件里也有 Submit Feedback 入口。OpenAI 也要求联系支持前先录一份 HAR。
常见问题
换无痕窗口就好了,说明什么?
问题多半在原来配置里的扩展、Cookie 或缓存。逐个打开扩展,找出拦截验证脚本的那一个。Cloudflare 点名的有广告拦截、脚本拦截、防指纹,以及修改 User-Agent、Canvas、WebGL 的扩展。
一直转圈,和「Sorry, you have been blocked」是一回事吗?
不是。转圈或勾选框是验证,还有机会通过;「Sorry, you have been blocked」是拦截,换浏览器配置没有用。OpenAI 给的办法是关掉 VPN、换个网络位置,或等一段时间。
机房 IP 一定会被要求验证吗?
没有公开资料能这么说。Cloudflare 把 IP 信誉列为来源之一,也允许网站方按 ASN 写规则;OpenAI、Anthropic 是否这样做、针对哪些网络,没有公开。
过一会儿又要验证,正常吗?
正常。cf_clearance 有有效期,默认 30 分钟,网站可以改;开了 Precursor 的网站还会在会话中持续评估。清除 Cookie 后也要重新验证。
开发者工具里看到 401,是被拦了吗?
不一定。按 Cloudflare 的说明,验证页会向 /cdn-cgi/challenge-platform/…/pat/… 请求 Private Access Token;设备、浏览器或网络(包括某些 VPN)给不出令牌时返回 401,这是正常流程,会改用普通验证。
想知道你自己的 IP 属于哪一类?
免费检测我的 IP