Windows 11下Laravel环境安装Vapor及执行Composer命令遇SSL证书问题
解决Composer/Vapor CLI的SSL证书错误(curl error 60)
排查php.ini配置有效性
- 确认修改的是当前PHP环境的配置文件:执行
php --ini,查看输出里的Loaded Configuration File路径,确保你编辑的是这个文件(CLI和FPM环境可能使用不同的php.ini) - 检查配置项:确保
curl.cainfo和openssl.cafile都指向cacert.pem的绝对路径,示例:curl.cainfo = "/usr/local/etc/php/cacert.pem" openssl.cafile = "/usr/local/etc/php/cacert.pem" - 验证配置生效:修改后重启终端,执行
php -i | grep "cainfo"(Linux/Mac)或php -i | findstr "cainfo"(Windows),确认输出的路径正确
确认cacert.pem文件可用
- 重新下载官方证书包:确保文件是最新且未损坏的官方版本
- 检查文件权限:Linux/Mac下执行
chmod 644 /path/to/cacert.pem,Windows下取消文件只读属性,保证PHP进程能读取该文件
Composer专属修复
- 临时测试(不推荐生产环境):执行
composer update --insecure跳过SSL验证,仅用于确认问题根源 - 永久配置:执行
composer config --global cafile /path/to/cacert.pem,让Composer全局使用指定证书文件
Vapor CLI安装处理
- 直接通过指定证书的PHP命令执行安装:
这条命令会临时为本次PHP执行指定证书,绕过CLI环境的配置问题php -d curl.cainfo=/path/to/cacert.pem composer global require laravel/vapor-cli
系统级证书检查
- Windows:打开
Internet选项→内容→证书,查看「受信任的根证书颁发机构」是否包含常用CA证书,缺失则手动导入cacert.pem中的根证书 - Linux:执行
sudo update-ca-certificates更新系统证书缓存;Ubuntu可额外安装sudo apt-get install ca-certificates - Mac:执行
brew install openssl后更新系统证书缓存
内容的提问来源于stack exchange,提问作者Aaron
相关产品推荐
相关产品推荐

