正确命令是composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/,必须带-g、键名准确、显式声明type值、url末尾带斜杠,且需执行clear-cache验证生效。

直接用 composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/ 就能切,但不加 -g、URL 少了末尾 /、没清缓存,三者任一出错都会静默失效——你看到命令成功,实际仍走 packagist.org。
为什么 composer install 还是卡在 packagist.org?
不是镜像没配,而是 Composer 配置优先级:项目级(composer.json 里的 repositories) > 全局(~/.composer/config.json)。常见坑:
- 项目根目录
composer.json里有手动写的"repositories": [{"type": "composer", "url": "https://packagist.org"}],会直接覆盖全局设置 - 执行过
composer config repo.packagist ...(漏掉-g),结果只改了当前项目的composer.json,换目录就失效 - 镜像 URL 写成
https://mirrors.cloud.tencent.com/composer(缺末尾/),Composer 拼路径时变成/composerpackages.json,返回 404
composer config -g repo.packagist 的正确写法
这条命令必须严格满足四个条件,少一个都不生效:
- 必须带
-g(或--global),否则写入项目级配置 - 键名只能是
repo.packagist(不是repos.packagist、repositories.packagist.org等变体) - 必须显式传入
composer作为type值,不能省略 - URL 必须以
/结尾:https://mirrors.cloud.tencent.com/composer/
正确命令:composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
腾讯云跨账号资源迁移工具,支持将账号A的VPC、CLB、NAT、CVM、安全组等资源迁移至账号B,通过CCN云联网实现跨账号网络互通,提供自动扫描、配置生成、Terraform部署功能。
验证是否真走腾讯云镜像
别只信命令返回 “success”,要看实际网络请求是否发到腾讯云:
- 运行
composer config -g repo.packagist.url,输出应为https://mirrors.cloud.tencent.com/composer/ - 加
-vvv跑一次composer update --dry-run,搜索日志里的GET https://mirrors.cloud.tencent.com/ - 执行
composer diagnose,末尾 “Repo” 行显示的地址必须匹配腾讯云域名
如果任一检查失败,立刻执行 composer clear-cache —— 缓存残留是最常被忽略的环节。
切换后 Could not find package 怎么办?
腾讯云镜像同步有延迟,尤其对刚发布的新包或私有仓库,通常滞后 5–30 分钟。此时:
- 先确认包确实已发布到 packagist.org(访问
https://packagist.org/packages/{vendor/name}) - 用
composer show -p | head -n 3看能否列出包名,若不行,等几分钟再试 - 临时直连官方源调试:
COMPOSER_REPO_PACKAGIST=https://packagist.org composer require xxx(仅限 Composer 2.2+)
注意:华为云、阿里云镜像路径格式不同,腾讯云地址不能套用其他厂商模板;清华旧镜像 packagist.phpcomposer.com 已下线,别再用。










