您的 openssl 扩展不支持 SHA384,无法验证 phar 文件完整性
Posted
技术标签:
【中文标题】您的 openssl 扩展不支持 SHA384,无法验证 phar 文件完整性【英文标题】:SHA384 is not supported by your openssl extension, could not verify the phar file integrity 【发布时间】:2019-07-25 18:05:07 【问题描述】:当我在 Windows 10 上运行 composer self-update
时出现错误
这是完整的错误消息
composer self-update
Updating to version 1.8.4 (stable channel).
Downloading (100%)
[RuntimeException]
SHA384 is not supported by your openssl extension, could not verify the phar file integrity
我正在运行php 7.3.2
可能是什么问题?
【问题讨论】:
您使用的是旧版本的作曲家。尝试完全删除它并从头开始安装最新版本。 Here's a Github issue 关于此错误消息。 您需要卸载 composer = 1.7.3 以避免将来所有更新类型安装时出现更新错误 @MagnusEriksson 重新安装成功 或者你可以先切换回php 7.2,然后运行composer selfupdate。如果成功,您可以切换到 php 7.3 或 7.4。 【参考方案1】:删除旧版本并安装最新版本的 Composer,
删除您的旧版本:
sudo rm -f /usr/local/bin/composer
下载安装程序:
sudo curl -s https://getcomposer.org/installer | php
移动 composer.phar 文件:
sudo mv composer.phar /usr/local/bin/composer
【讨论】:
实际上甚至不需要删除旧版本。只需安装新的并移动composer.phar
在某些机器和安装中,最好执行命令“chmod +x /usr/local/bin/composer”使其可执行。
OP 使用的是 Windows 操作系统,因此这些命令不适用。
这在报告相同 openssl 问题的 Docker 容器中也适用于我。【参考方案2】:
该错误表示您使用的是composer
版本1.7.2
或更低版本。
你必须卸载composer,然后安装composer
版本1.7.3
及以上。
【讨论】:
【参考方案3】:我刚刚在我的 Windows 机器上遇到了同样的问题。我刚刚从 https://getcomposer.org/download/ 下载并安装了 Composer,当我尝试运行 php composer-setup.php
时,它失败并显示“您的 openssl 扩展不支持 SHA384”。
对我有用的解决方案是执行命令行安装(记录在同一站点上)。访问https://getcomposer.org/download/获取最新的SHA。
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'c5b9b6d368201a9db6f74e2611495f369991b72d9c8cbd3ffbc63edff210eb73d46ffbfce88669ad33695ef77dc76976') echo 'Installer verified'; else echo 'Installer corrupt'; unlink('composer-setup.php'); echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
【讨论】:
【参考方案4】:手动更新作曲家:
wget -cO - https://getcomposer.org/composer-stable.phar > /usr/local/bin/composer
检查已安装的作曲家版本:
composer --version
【讨论】:
【参考方案5】:您可以从https://getcomposer.org/ 下载最新版本,只需替换 composer 文件夹中的文件 composer.phar,在我的机器上,它安装在 的 windows 中>C:\作曲家
【讨论】:
【参考方案6】:解决方案 1
手动更新作曲家(卸载并安装)
解决方案 2
错误表示您使用的是 Composer 1.7.2 或以下版本。
卸载 composer,然后安装 composer 1.7.3 及以上版本。
或
composer self-update --rollback 并运行 composer self-update。
谢谢!
【讨论】:
以上是关于您的 openssl 扩展不支持 SHA384,无法验证 phar 文件完整性的主要内容,如果未能解决你的问题,请参考以下文章