Skip to content

SSL 证书报错更好懂了:2.1.316 会指出常见原因,还新增一个跨证书开关 ​

在公司网络、代理或者自建网关后面用 Claude Code,最让人头疼的往往不是功能,而是一句干巴巴的证书错误:不知道是代理换了证书、系统根证书缺失,还是服务器配置有问题。CLI 2.1.316 在这方面做了两处改动。

一、错误提示会告诉你「可能是什么原因」 ​

更新说明里写的是:改进了 SSL 证书错误的提示,现在会指出可能的原因,并给出各自的解决办法。其中点名的一种典型情况是:服务器没有把中间证书(intermediate certificate)一起发出来。

这类问题很常见:浏览器能自己补全证书链,所以网页打开正常;但命令行工具不一定会补,于是只有 Claude Code 报错。有了新的提示,你可以先对照它列出的原因逐条排查,而不必一上来就去搜通用的证书报错。

排查时可以按这个顺序想一想:

  1. 是不是中间证书缺失:问问服务器或网关的管理员,证书链是否配置完整;
  2. 是不是公司代理在做 HTTPS 检查:这种情况需要让 Claude Code 信任公司的根证书;
  3. 是不是系统时间或根证书库的问题:时间偏差很大或根证书库过旧,也会触发同样的错误。

具体提示的措辞以你实际看到的为准,这里只是帮你理清思路。

二、新增 CLAUDE_CODE_DISABLE_LOOPED_CROSS_CERT_DROP ​

同一版本新增了环境变量 CLAUDE_CODE_DISABLE_LOOPED_CROSS_CERT_DROP。按更新说明,它的作用是:保留那些互相认证、形成环路的系统交叉证书(cross-certificates),面向的是「私有 CA 恰好需要其中一张」的服务器。

也就是说,Claude Code 默认会丢掉这类形成环路的交叉证书;绝大多数人用不到这个开关。只有当你的私有 CA 确实依赖它、而证书校验又总是失败时,才需要设置:

bash
export CLAUDE_CODE_DISABLE_LOOPED_CROSS_CERT_DROP=1
claude

1 只是常见的开关写法,具体取值请以官方文档为准。没有明确需要时,不建议随手打开。

小结 ​

证书问题还是要从根源修:补全证书链、信任正确的根证书。2.1.316 的价值在于,报错时能更快告诉你该往哪个方向查;而对少数使用私有 CA 的团队,新增的环境变量则多了一条出路。

Claude-cn.org,专注于 Claude Code 中文教程