问题 问题排查
Codex 无法连接怎么办?CLI 超时、登录失败与断流排查
Codex CLI 请求超时、登录回调失败或输出到一半断开,通常与终端代理、出口地区和节点稳定性有关。本文给出 Codex 连接失败的原因、检查方法和解决步骤。
- 作者
- AI 工具编辑组
- 首次发布
- 最后更新
- 内容类型
- 问题排查
- 资料核对
- 阅读时间
- 约 1 分钟
信息可能随服务调整而变化,请以最新官方信息为准。
直接答案
Codex 无法连接,多数情况是终端没有走代理:Codex CLI 不会自动使用客户端的系统代理,需要设置 HTTPS_PROXY 环境变量或开启 TUN 模式。其次检查出口是否在 OpenAI 官方支持地区(中国大陆与中国香港不在列表中)、登录时浏览器与终端的出口是否一致,以及节点在长时间任务中是否稳定。先让终端通,再看地区和线路。
可能原因
- A
Codex CLI 没有走代理
系统代理只对浏览器等程序生效,终端里的 Codex 需要环境变量或 TUN 模式接管才能访问 OpenAI 服务。
- B
出口不在官方支持地区
使用香港节点或代理失效时,请求会被拒绝,常见表现为 403 或地区不受支持的错误。
- C
登录回调受阻
使用 ChatGPT 账号登录时需要浏览器完成授权并回调到本机,浏览器扩展、远程开发环境或端口占用都可能导致回调失败。
- D
节点不稳定导致流式输出中断
编程任务持续时间长,节点丢包、晚高峰拥塞或自动切换节点都会让流式连接断开。
- E
API Key 或账号额度问题
使用 API Key 方式时,Key 无效、组织未开通或额度用尽会返回 401、429 等错误,这不是网络问题。
检查方法
- 在启动 Codex 的同一终端中检查 HTTPS_PROXY 环境变量是否存在且端口正确。
- 在终端执行 curl -I https://api.openai.com,确认能得到响应头而不是超时。
- 查看代理客户端的连接列表,确认出现 openai.com 或 chatgpt.com 相关请求并命中代理策略组。
- 用 IP 查询网站确认出口地区在 OpenAI 官方支持列表中。
- 区分报错代码:401 / 429 多与账号或额度有关,超时与断流多与网络有关。
解决步骤
-
确认客户端代理端口
在代理客户端设置中查看混合端口或 HTTP 端口,以客户端显示的为准,例如 7897。
-
设置终端代理变量
macOS / Linux 执行 export HTTPS_PROXY=http://127.0.0.1:端口;Windows PowerShell 执行 $env:HTTPS_PROXY="http://127.0.0.1:端口",然后在同一终端启动 Codex。
-
或开启 TUN 模式
在 Clash Verge Rev 等客户端中开启 TUN 模式,让 Codex、git、包管理器等命令行工具统一走代理。
-
固定支持地区节点
为 OpenAI 相关域名建立手动选择的策略组,选用官方支持地区、晚高峰稳定的节点,关闭自动测速切换。
-
重新完成登录
在代理生效的终端中重新执行登录,在同一台电脑的浏览器中完成授权,避免浏览器与终端出口地区不一致。
-
长任务前检查稳定性
执行大型重构等长任务前,先用简短请求确认连接稳定;如经常断流,换专线或低负载节点。
先区分网络错误和账号错误
Codex 的报错可以粗略分成两类:一类是请求根本到不了服务器(超时、连接被拒、断流),另一类是服务器明确返回了拒绝(401、403、429)。前者几乎都是代理或节点问题,后者要结合账号、额度和出口地区判断。先看清报错再动手,能避免反复换节点却解决不了账号问题。
常见报错对照
| 报错 / 表现 | 可能原因 | 处理方向 |
|---|---|---|
| error sending request / 连接超时 | 终端未走代理或节点超时 | 设置 HTTPS_PROXY,换节点 |
| stream disconnected before completion | 长连接中断 | 固定稳定节点 |
| 反复 Reconnecting | 节点丢包或自动切换 | 关闭自动测速切换 |
| 401 Unauthorized | 登录失效或 Key 无效 | 重新登录或检查 Key |
| 403 / unsupported country | 出口地区不受支持 | 换支持地区节点 |
| 429 Too Many Requests | 请求过多或额度限制 | 降低频率,查看额度 |
不同使用环境的差异
- 本机终端:最简单的方式是设置环境变量或开启 TUN,详见 Codex CLI 代理设置教程。
- IDE 插件:插件进程继承编辑器的环境变量,修改后需要完整重启编辑器;部分编辑器也提供独立的代理设置项。
- WSL / Docker:容器和子系统中的 127.0.0.1 指向自身,需要使用宿主机地址,并在代理客户端中允许局域网连接。
- 远程 SSH 服务器:本机 TUN 不会影响服务器,需在服务器侧单独处理出口。
提示开启 TUN 后,git、npm、pip 等工具也会一起走代理。如果国内镜像源变慢,可以在规则中把镜像域名设为直连。
注意不要在公共服务器或共享环境中明文保存 API Key 和代理认证信息,必要时使用环境变量管理并限制文件权限。
更完整的网络要求见 Codex 网络环境完整指南;Claude Code 的同类问题见 Claude Code 网络连接失败怎么办。
仍然无法解决怎么办?
如果代理与节点都确认无误仍无法连接,建议联系机场客服确认节点对 OpenAI API 的连通性,或换一款客户端复测;在远程服务器、WSL 或容器中使用时,需要单独为该环境配置代理。也请查看 OpenAI 官方状态页确认服务是否正常,并以官方支持地区列表与服务条款为准,遵守当地法律法规。
常见问题
Codex 无法连接怎么办?
Codex 无法连接,多数情况是终端没有走代理:Codex CLI 不会自动使用客户端的系统代理,需要设置 HTTPS_PROXY 环境变量或开启 TUN 模式。其次检查出口是否在 OpenAI 官方支持地区(中国大陆与中国香港不在列表中)、登录时浏览器与终端的出口是否一致,以及节点在长时间任务中是否稳定。先让终端通,再看地区和线路。
浏览器能用 ChatGPT,为什么 Codex CLI 连不上?
因为终端程序默认不读取系统代理。为终端设置 HTTPS_PROXY 环境变量,或开启客户端的 TUN 模式即可解决大部分情况。
Codex 输出到一半提示 stream disconnected 怎么办?
这通常是长连接被中断,多与节点丢包、晚高峰拥塞或自动切换节点有关。固定稳定节点,必要时换专线节点。
在 SSH 远程服务器上使用 Codex 如何走代理?
远程服务器不会继承本机代理,需要在服务器上单独配置可用的出口,或使用 SSH 端口转发把本机代理端口映射过去。