我正在尝试在Windows上安装composer,但是我遇到了以下错误:
无法下载“https://getcomposer.org/versions”文件: SSL操作失败,返回代码1。OpenSSL错误信息:错误: 1416F086:SSL例程:tls_process_server_certificate:证书 验证失败。启用加密失败,打开流失败。
发生了什么情况,如何修复?
我正在尝试在Windows上安装composer,但是我遇到了以下错误:
无法下载“https://getcomposer.org/versions”文件: SSL操作失败,返回代码1。OpenSSL错误信息:错误: 1416F086:SSL例程:tls_process_server_certificate:证书 验证失败。启用加密失败,打开流失败。
发生了什么情况,如何修复?
我曾遇到同样的错误,以下是我解决问题的方法: 我按照https://getcomposer.org/download/中命令行安装段落中的说明进行操作。
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
我将行 php composer-setup.php
替换为 php composer-setup.php --disable-tls
我通过检查 composer-setup.php 中的代码找到了这个选项。我应该运行 php composer-setup.php --help
来更快地找到相同的答案,而无需阅读代码。
作为一个快速解决方案,我可以通过其 Docker 镜像运行 composer
:
docker run --rm --interactive --tty \
--volume $PWD:/app \
composer/composer install
我在我的本地Ubuntu机器上被这个问题困扰。毫无明显原因,composer会超时。
我曾经遇到过同样的问题。你需要找到以下证书并手动安装到“当前用户/本地计算机”的受信任根目录中。
C:\xampp\apache\bin\curl-ca-bundle.crt
我曾经遇到过同样的问题,原因是我的电脑上运行了VPN应用程序,退出该应用程序后问题得到解决。
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php composer.phar install
$uriScheme = $this->disableTls ? 'http' : 'http';
我已经解决了,你遇到的问题似乎与缺少证书有关。 但如果没有证书,请尝试将composer目录更改到其他地方,而不是桌面,然后再次尝试安装。 这对我真的很有效!!
file_get_contents()
调用,但是OP不应该被要求修改composer安装脚本来完成此操作。 - HPierce