推荐使用命令 composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/ 设置全局镜像,它自动适配系统、安全写入配置、不破坏原有设置,且 url 必须带结尾斜杠,否则因路径匹配失败导致 404。

执行这条命令就生效,别改 config.json
直接运行 composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/,全局镜像就设好了。这不是“教程步骤”,而是唯一推荐的写法——它自动识别你的系统(Windows/macOS/Linux),安全写入 ~/.composer/config.json(或 Windows 的 %APPDATA%\Composer\config.json),不破坏已有配置(比如 auth tokens)。手动编辑 JSON 容易漏逗号、错缩进,一出错后续所有 composer 命令都会报 file_get_contents(): Failed to open stream。
URL 末尾的 / 缺不得,否则 404 是常态
腾讯云镜像地址必须带结尾斜杠:https://mirrors.cloud.tencent.com/composer/。漏掉 / 后,Composer 2.2+ 会认为 URL 不合法,请求时变成 /p2/ 路径但服务端无响应,最终报 Could not fetch https://mirrors.cloud.tencent.com/composer/p2/。这不是网络问题,是协议路径匹配失败。阿里云、华为云等其他镜像同理——https://mirrors.aliyun.com/composer/ 对,https://mirrors.aliyun.com/composer 错。
为什么 composer install 还走 packagist.org?
常见现象:命令跑完没报错,但 composer install 依然慢、仍见 Repo packagist.org is default。原因只有两个:
- 项目根目录下的
composer.json里显式写了"repositories"字段(哪怕只配了一个私有包),它会**完全覆盖**全局设置——Composer 优先级永远是:项目 > 用户 > 全局 - 键名写错了,比如用了
composer config -g repositories.packagist(旧语法,Composer 2.5+ 已弃用)或repo.packagist.org(不存在的键)
验证是否真生效,别看命令输出,执行 composer config -g repo.packagist,输出必须是 {"type": "composer", "url": "https://mirrors.cloud.tencent.com/composer/"};再跑 composer show laravel/framework --no-ansi | head -n 3,响应头或 URL 里得出现 mirrors.cloud.tencent.com。
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
临时切源和彻底绕过项目配置的方法
CI 构建或调试时不想动全局配置,用 -r 参数临时指定:
-
composer install -r https://mirrors.cloud.tencent.com/composer/—— 当前命令独享,不写任何文件 -
composer update --repository-url=https://mirrors.cloud.tencent.com/composer/—— 更可靠,能强制忽略项目composer.json里的所有repositories配置
注意:-r 不支持多个源,也不兼容某些插件逻辑;--repository-url 才是真正“绕过一切”的开关。如果项目里写了自定义仓库又想临时全走腾讯云,必须用后者。
最常被忽略的是优先级冲突——你以为设了全局就万事大吉,结果项目里一行 "repositories" 就让镜像失效。检查 composer.json 比重装 Composer 有用得多。










