答案:Composer安装时出现"hash verification failed"错误通常由缓存损坏、网络问题或镜像源异常引起。首先清除缓存(composer clear-cache),再尝试切换回官方源(composer config -g repo.packagist composer https://packagist.org);若无效,可删除vendor目录和composer.lock后重新安装;同时检查代理设置与PHP环境是否正常,多数问题可通过清缓存或换源解决。

当你在使用 Composer 安装或更新 PHP 包时遇到 "hash verification failed" 错误,通常意味着下载的文件内容与预期的哈希值不匹配。这可能是由于网络问题、缓存损坏、镜像源异常或包本身被篡改(极少见)。以下是几种常见且有效的解决方法。
Composer 会缓存已下载的包,若缓存文件损坏,就会导致哈希校验失败。
执行以下命令清除缓存:composer clear-cache 或 composer clearcache
之后重新运行你的 composer install 或 composer update 命令。
如果你使用了国内镜像(如阿里云、华为云、Laravel China 镜像等),有时镜像同步不及时或文件传输出错会导致哈希不一致。
临时切换回官方源尝试:composer config -g repo.packagist composer https://packagist.org然后再执行安装命令。如果恢复正常,说明原镜像有问题,可等待其修复或更换其他可靠镜像。
如果缓存清除无效,可能是 composer.lock 与实际下载内容不一致。
vendor/ 目录composer.lock 文件composer install 重新生成依赖注意:生产环境慎用此方法,确保你了解依赖变更的影响。
某些公司网络或代理可能对下载内容进行中间处理,导致文件被修改。
可尝试:unset http_proxy; unset https_proxy
composer config -l | grep proxy
极少数情况下,PHP 的 hash 函数或 OpenSSL 扩展异常可能导致校验错误。
确认 PHP 正常工作:php -r "echo hash('sha256', 'test') . PHP_EOL;" 看是否有输出php_openssl 扩展已启用基本上就这些。大多数“hash verification failed”问题通过清缓存或切回官方源就能解决。关键是判断是本地问题、网络问题还是镜像源问题。逐步排查,通常很快能恢复。
以上就是composer 提示 "hash verification failed" 如何解决?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号