必须删除 composer.lock 并重装,仅清缓存或只删 vendor 无效;根源在于 lock 文件中硬编码的 dist.sha256 与镜像源当前包不匹配,composer 主动拒绝加载。需先切官方源、清缓存、同步删除 vendor 和 composer.lock,再运行 composer install 生成新锁文件。

必须删掉 composer.lock 并重装,只清缓存或只删 vendor 一定失败。 根源在 composer.lock 文件里硬编码的 dist.sha256 值,它和镜像站当前提供的包不一致——不是网络问题,是 Composer 主动拒绝加载。
确认当前生效的镜像源是不是你以为的那个
很多人执行了 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ 就以为搞定了,但实际请求可能根本没走到镜像站。
- 查全局配置:
composer config -g repos.packagist,正确输出应为{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"};如果还是packagist.org,说明没设上 - 查项目级覆盖:
composer config repositories,若出现"type": "vcs"或自定义 URL,会直接绕过全局镜像 - 手动测通断:
curl -I https://mirrors.aliyun.com/composer/packages.json,必须秒回HTTP/2 200;卡住、返回 HTML 或 301,说明镜像服务异常或 TLS 握手失败
为什么删了 vendor 还报 hash verification failed
因为 composer install 默认复用现有 composer.lock,而这个文件里的 dist.sha256 已和当前镜像返回的包不匹配。删 vendor 只清安装物,没动元数据源。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- Windows 用户必须配对执行:
rd /s /q vendor & del composer.lock;漏掉del composer.lock就白干 - Linux/macOS 是:
rm -rf vendor composer.lock - 删之前建议先备份:
cp composer.lock composer.lock.bak -
composer clear-cache只清~/.composer/cache/或%APPDATA%\Composer\Cache,composer.lock里的哈希纹丝不动
彻底修复:切官方源 → 清双目录 → 重生成锁文件
镜像同步有 10–30 分钟延迟,尤其对新发版或 dev 分支。别靠“换一个镜像”碰运气,得让 Composer 拉取同一时刻的元数据快照。
- 先切回官方源保真:
composer config -g --unset repos.packagist - 清缓存:
composer clear-cache - 删干净:
rm -rf vendor composer.lock(Windows 用rd /s /q vendor & del composer.lock) - 重装生成新锁:
composer install——此时所有dist.sha256都来自同一时刻的packages.json - 等 10–30 分钟再切回阿里云;着急可换华为云镜像,已知同步更快
真正难排查的 case 往往不在 Composer 层,而在系统时间不准、代理篡改响应体、或 CI 环境中构建缓存污染——这些不会报错,但会让 composer.lock 和实际下载内容持续错位。










