当前(2026年3月)华为云Composer镜像稳定地址是https://mirrors.huaweicloud.com/repository/php/composer/,需通过composer config -g repo.packagist composer [该地址]全局配置,注意键名、路径和类型声明不可省略。

华为云镜像地址现在用哪个?https://mirrors.huaweicloud.com/repository/php/composer/ 是当前(2026年3月)稳定可用的官方推荐地址。注意不是 https://www.php.cn/link/ae5a48893b0ff60134096f2f4c9f7db2composer/,也不是旧版的 https://www.php.cn/link/ae5a48893b0ff60134096f2f4c9f7db2repository/php/ —— 后两者会触发 404 或重定向失败,导致 composer install 卡在 “Loading composer repositories” 阶段。
常见错误现象:
- 执行
composer update后长时间无响应,最后报Could not fetch <a href="https://www.php.cn/link/ae5a48893b0ff60134096f2f4c9f7db2">https://www.php.cn/link/ae5a48893b0ff60134096f2f4c9f7db2</a>...: failed to open stream -
composer config -l显示repos.packagist地址末尾缺/composer/,少了一级路径
全局配置命令要写对
直接运行这条命令即可生效,不用改配置文件、不用重启终端:
composer config -g repo.packagist composer https://mirrors.huaweicloud.com/repository/php/composer/
说明:
-
-g表示全局,影响所有项目 -
repo.packagist是 Composer 内部识别镜像源的固定键名,不能写成repos.packagist(多一个 s)或packagist.org - 如果误加了
--unset或输错键名,会导致配置丢失,恢复时得重新执行上面那条命令
只想给当前项目配镜像?别加 -g
进入项目根目录(有 composer.json 的地方),运行:
composer config repo.packagist composer https://mirrors.huaweicloud.com/repository/php/composer/
这样只会在当前项目的 composer.json 里新增一段:
"repositories": {
"packagist": {
"type": "composer",
"url": "https://mirrors.huaweicloud.com/repository/php/composer/"
}
}
注意:
- 这个改动会提交进 Git,团队协作时要注意是否希望所有人共用该镜像
- 若项目已存在自定义
repositories数组,手动编辑比命令更安全,避免覆盖原有私有包源
配完怎么确认真生效了?
运行 composer config -l,查找输出中这一行:
repos.packagist https://mirrors.huaweicloud.com/repository/php/composer/
如果看到的是 packagist.org 或其他地址,说明没生效;常见原因是:
- 命令里漏了
composer(第二个词),写成composer config -g repo.packagist https://...→ 缺少类型声明,Composer 会忽略 - 网络环境限制了 HTTPS 请求(比如公司代理拦截证书),可临时加
-vvv看详细错误
华为云镜像同步延迟略高于阿里云,但稳定性好,不常出现 503 或元数据校验失败;如果遇到 Package x/y has a PHP requirement incompatible with your PHP version 类报错,先 composer clearcache 再试,不是镜像问题,是本地缓存脏了。











