信息发布→ 登录 注册 退出

composer 提示 SSL 证书错误 (SSL certificate problem) 怎么办?

发布时间:2025-11-12

点击量:
优先更新Composer并配置CA证书解决SSL问题:1. 更新Composer并下载最新ca-bundle.crt;2. 在php.ini中设置openssl.cafile和curl.cainfo指向证书;3. 或用composer config --global cafile指定证书路径;4. 确保系统时间正确;5. 仅测试环境可临时禁用TLS。

Composer 提示 SSL 证书问题,通常是因为系统或 PHP 环境无法验证 HTTPS 连接的证书。这在 Windows 或某些开发环境中比较常见。不要直接禁用 SSL 验证(不安全),建议优先尝试以下方法解决。

1. 更新 Composer 并检查 CA 证书包

Composer 依赖系统的 CA 证书来验证 HTTPS。很多问题源于证书过期或缺失。

解决方案:
  • 运行 composer self-update 确保 Composer 是最新版本。
  • 下载最新的 ca-bundle.crt 文件(例如从 https://www./link/5fe4dadcdb001d8566cd20e6d8a20251)。
  • 将该文件保存到一个目录,比如 C:\certs\cacert.pem(Windows)或 /etc/ssl/certs/cacert.pem(Linux/macOS)。

2. 配置 PHP 使用正确的证书

修改 php.ini 文件,确保 OpenSSL 能找到证书包。

  • 找到你的 php.ini 文件(可通过 php --ini 查看位置)。
  • 添加或修改以下配置项:
openssl.cafile=/path/to/cacert.pem
curl.cainfo=/path/to/cacert.pem

保存后重启 Web 服务或命令行环境。

3. 设置 Composer 使用自定义证书路径

如果不想改全局 php.ini,可以单独为 Composer 配置证书路径。

  • 运行命令:
composer config --global cafile "C:/certs/cacert.pem"

路径使用绝对路径,并注意反斜杠转义(Windows 下可用正斜杠或双反斜杠)。

4. 检查系统时间和时区

错误的系统时间会导致证书“未生效”或“已过期”。

  • 确认电脑时间、日期和时区设置正确。
  • 尤其是虚拟机或老旧设备容易出现时间偏差。

5. 临时方案(仅用于测试环境)

如果急需使用且处于本地开发环境,可临时关闭 SSL 验证(不推荐生产环境使用):

composer config --global disable-tls true

但这会降低安全性,可能导致中间人攻击。完成后应立即恢复:

composer config --global disable-tls false

基本上就这些。重点是更新证书并正确配置 php.ini 或 Composer 的 cafile。搞定后 composer install/update 就不会再报 SSL 错误了。

标签:# php  # linux  # composer  # windows  # 电脑  # 虚拟机  # ssl  # mac  # curl  # ai  # macos  # win  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!