清理缓存后必须重配镜像源,因缓存仅存元数据,镜像配置独立存储;需用 composer config -g repo.packagist 验证配置是否存在,正确命令为 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/,且必须检查 -vvv 日志确认生效。

清理缓存后必须重配镜像源,否则 composer install 仍会 fallback 到 https://packagist.org —— 缓存只是元数据,镜像配置是独立存储的。
验证当前镜像是否还在生效
清完缓存(composer clear-cache)不代表镜像配置自动恢复或保留。先确认配置是否还存在:
- 运行
composer config -g repo.packagist,如果输出为空、null或"https://packagist.org",说明配置已丢失 - 若输出是完整 JSON,如
{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"},则配置仍在,无需重配 - 执行
composer diagnose,看 “Repo” 行是否显示镜像域名;若仍是packagist.org,大概率被项目级repositories覆盖或全局配置失效
重配镜像源必须满足三个硬性条件
Composer 2.x 对配置格式极其敏感,漏一项就静默回退官方源,且不报错:
- 键名必须是
repo.packagist(单数,不是repos.packagist或repositories.packagist.org) - 中间参数
composer是type值,不可省略(不能写成composer config -g repo.packagist https://...) - URL 必须是 HTTPS,且末尾带斜杠:
https://mirrors.aliyun.com/composer/✅,少斜杠会触发 404
正确命令(可直接复制):composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
项目级配置更可靠,尤其在 CI 或宝塔环境
全局配置(-g)只对当前 shell 用户生效,CI 流水线、宝塔后台、Docker 容器常以 www 或 runner 用户运行,根本读不到你的全局配置:
- 进入项目根目录,执行:
composer config repo.packagist composer https://mirrors.aliyun.com/composer/(不加-g) - 该命令会安全写入
composer.json的repositories字段,key 固定为"packagist" - 如果
composer.json中已有"repositories": [](数组),命令会报错;需先手动改为"repositories": {}(对象)再执行 - 改完立刻删掉
vendor/和composer.lock,再跑composer install,否则旧 lock 文件里的 dist URL 仍指向官方源
重配后必须检查日志才能确认真生效
别靠“感觉快了”判断,composer install -vvv 日志才是唯一依据:
- 滚动到底部,搜索
mirrors.aliyun.com或mirrors.cloud.tencent.com - 看到类似这行才表示走通:
Reading packages.json from cache at /home/user/.composer/cache/repo/https---mirrors-aliyun-com-composer/packages.json - 如果日志里仍有
https://packagist.org/packages.json或https://packagist.org/p/,说明镜像没走通,回头检查键名、type、URL 斜杠三要素 - 注意:
composer update --lock才会强制刷新composer.lock中所有包的dist.url,仅install不会改 lock 文件
最易忽略的一点:镜像源配置和缓存是两件事,清缓存 ≠ 配置恢复;而配置写错又不会报错,只能靠 composer config -g repo.packagist 输出和 install -vvv 日志交叉验证。

















