跳转到主内容
趣航编程网 - 趣学编程,启航技术之路!

如何解决composer下载包时出现的SSL证书问题?

首先检查PHP的openssl扩展是否启用,确保OpenSSL支持HTTPS;然后配置正确的CA证书路径,下载cacert.pem并设置php.ini中的curl.cainfo和openssl.cafile指向该文件;接着更新Composer至最新版本并确认secure-http为true;最后可选切换到阿里云等支持TLS的国内镜像源,避免关闭SSL验证带来的安全风险。

Composer 下载包时出现 SSL 证书问题,通常是因为系统或 PHP 环境无法验证 HTTPS 连接的证书。这个问题在 Windows 或某些 Linux 发行版中较为常见。直接关闭 SSL 验证虽然能临时解决,但存在安全风险,不推荐长期使用。以下是几种稳妥的解决方案。

检查 PHP 的 open ssl扩展是否启用确保你的 PHP 环境已开启 OpenSSL 扩展,这是处理 HTTPS 请求的基础。

运行php-m查看已加载模块,确认列表中有 openssl如果没有,打开 php.ini 文件,找到;extension=openssl,去掉前面的分号启用保存后重启 Web 服务或命令行环境配置正确的 CA 证书路径Composer 需要可信的证书颁发机构(CA)证书来验证远程服务器。如果路径配置错误,就会报 SSL 错误。

下载最新的ca-bundle.crt文件,可从https://www.php.cn/link/5fe4dadcdb001d8566cd20e6d8a20251获取

保存到本地,例如:

C:\php\extras\ssl\cacert.pem(Windows)或/etc/ssl/certs/cacert.pem(Linux)

在 php.ini 中设置:curl.cainfo = "证书文件完整路径"openssl.cafile = "证书文件完整路径"保存并重启环境更新 Composer 并检查全局配置旧版本 Composer 可能存在兼容性问题,同时要确认没有强制跳过 SSL 验证。

PHP 8.5.5 PHP 8.5.5 是 PHP 8.5 分支的维护更新版本。该版本延续了“小步快跑”的迭代逻辑,通过深度错误修复、底层性能微调以及安全加固,旨在为开发者提供一个更健壮、更高效的运行环境。该版本严格遵守语义化版本规范,不包含破坏性变更。

下载运行composerself-update升级到最新版本执行composer config --list查看全局设置检查是否有disable-tls或secure-http被设为 false如有,运行composer config --global secure-http true恢复默认使用国内镜像源(可选)

如果你网络环境对 HTTPS 支持不稳定,可以切换到支持 HTTPS 的国内镜像,减少连接问题。

设置阿里云

镜像:

composer config --global repo.packagist composer https://mirrors.aliyun.com/composer/该镜像支持 TLS,不会绕过安全验证,比关闭 SSL 更安全基本上就这些。只要证书路径正确、PHP 配置完整,Composer 的 SSL 问题大多能解决。避免使用 disable-tls,否则可能引入安全漏洞。

相关文章