应更换 composer 全局镜像源,如执行 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/;证书错误时可临时禁用 https 校验或升级 ca-certificates。

为什么 composer install 卡在 “Downloading…” 且速度极低
国内直连 Packagist 官方源(https://packagist.org)受 DNS 污染、TLS 握手延迟和 CDN 路由绕行影响,下载 ZIP 包时经常卡在 0–10%,甚至超时失败。这不是你网络差,是默认源没走国内镜像节点。
换国内镜像源的两种可靠方式(推荐用全局配置)
别手动改每个项目的 composer.json —— 容易漏、难维护、团队协作时不同步。直接改 Composer 全局配置,一劳永逸:
- 运行
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/(阿里云镜像,稳定且同步及时) - 或换腾讯云:
composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/ - 执行后,所有后续
composer install/composer update都自动走镜像,无需项目级改动
遇到 curl error 60 或证书报错怎么办
部分镜像 HTTPS 证书链不被旧版 cURL 或 OpenSSL 信任,尤其在 macOS 或老旧 Linux 上。不是源有问题,是本地 TLS 校验太严:
- 临时跳过校验(仅调试用):
composer config -g secure-http false,再重试 - 更安全的做法:升级系统 ca-certificates 包,或更新 Composer 自身:
composer self-update - 若仍不行,可降级为 HTTP 镜像(仅限可信内网环境):
composer config -g repo.packagist composer http://mirrors.aliyun.com/composer/
镜像不是万能的:这些情况它也快不了
换源只加速从 Packagist 下载 ZIP 包的过程。以下环节不受影响,该慢还是慢:
-
composer install后的自动脚本(如post-install-cmd)—— 这是项目自己的逻辑,和源无关 - 依赖包里含大量二进制扩展(如
ext-swoole编译)—— 瓶颈在本地编译,不是下载 - 私有包(
repositories类型为vcs或package)—— 它们走的是你配置的 Git 地址或 JSON 清单,不经过 Packagist 镜像
真正卡住时,先 composer install -v 看具体停在哪一步,别默认归咎于源速度。










