推荐按项目配置repositories并设"packagist.org": false,避免全局配置导致团队不一致、镜像故障全瘫痪及私有包解析错误;临时调试用-vvv查看真实请求地址验证是否命中镜像。

Composer 默认走国外源,国内直连基本卡死或超时,直接换镜像源是最简单有效的解法——不需要改全局配置、不用装插件、不碰 Composer 自身逻辑。
为什么 composer config -g repo.packagist 不推荐用
这条命令会把镜像写进全局 config.json,看似一劳永逸,但实际埋雷:
- 团队协作时,别人本地没配,你却用了镜像,
composer install结果可能不一致 - 某些私有包依赖原生 Packagist 的元数据结构,镜像同步有延迟,导致
Could not find package或版本解析错乱 - 一旦镜像临时不可用(比如阿里云源某天挂了),全局配置会让你所有项目一起瘫痪,切回默认源还得手动删配置
更稳的方式:按项目配 repositories(推荐)
在项目根目录的 composer.json 里加一段,只影响当前项目,干净、可追踪、可提交到 Git:
{
"repositories": [
{
"type": "composer",
"url": "https://mirrors.aliyun.com/composer/"
}
],
"packagist.org": false
}
"packagist.org": false 这行必须加,否则 Composer 仍会 fallback 到官方源,起不到加速作用;阿里云、腾讯云、华为云镜像 URL 都可用,选一个就行。
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
临时切换镜像?用 -vvv 看清真实请求地址
执行 composer require monolog/monolog -vvv,终端会输出完整 HTTP 请求日志,重点看:
- 是否命中你配的镜像域名(如
mirrors.aliyun.com) - 有没有出现
Connection timed out或curl error 28(说明 DNS 或网络层有问题,不是 Composer 配置问题) - 是否意外加载了
packagist.org的packages.json(说明"packagist.org": false没生效)
镜像本身是代理,不是魔法——如果本地 DNS 解析慢、公司防火墙拦截 HTTPS、或镜像源同步滞后,光改配置也救不了。真正卡住的时候,先 ping mirrors.aliyun.com 和 curl -I https://mirrors.aliyun.com/composer/packages.json 看底层通不通,比反复调 Composer 参数更省时间。










