切换国内镜像源可解决Composer卡在"Loading composer repositories"的问题,推荐使用阿里云镜像并清除缓存,同时检查网络、DNS及代理设置,必要时通过-vvv参数查看详细日志定位问题。

当使用 Composer 安装或更新依赖时,遇到 "Loading composer repositories with package information" 卡住不动的情况,通常是由于网络连接问题、镜像源响应慢或 DNS 解析异常导致的。这个问题在国内尤其常见。以下是几种有效的解决方法:
1. 切换为国内镜像源(推荐)
官方源位于境外,访问速度慢容易卡住。可以切换为国内镜像,如阿里云、腾讯云或 Laravel China 提供的镜像。
执行以下命令设置全局镜像:
composer config -g repos.packagist composer https://mirrors.aliyun.com/composer/如果你想恢复默认源,可运行:
composer config -g --unset repos.packagist2. 关闭 HTTPS,使用 HTTP 镜像(临时方案)
某些环境下 HTTPS 会因证书或代理问题变慢。可尝试使用 HTTP 协议:
composer config -g repos.packagist composer http://packagist.phpcomposer.com注意:HTTP 不如 HTTPS 安全,仅建议在调试或内网环境使用。
3. 检查网络与 DNS 设置
确认你的网络能正常访问 packagist.org 和 github.com。可以尝试 ping 或 curl 测试:
ping packagist.orgcurl -I https://packagist.org
如果无法访问,可能是防火墙、DNS 污染或代理问题。建议更换 DNS(如 8.8.8.8 或 1.1.1.1),或使用代理工具。
4. 清除 Composer 缓存
旧的缓存可能损坏或过期,导致加载卡住:
composer clear-cache清除后重试命令,Composer 会重新下载元数据。
5. 使用 -vvv 参数查看详细日志
通过开启详细输出,定位卡在哪一步:
composer install -vvv观察输出信息,看是卡在 DNS 查询、SSL 握手还是某个特定仓库,有助于进一步排查。
基本上就这些常用方法。多数情况下,切换到阿里云等国内镜像即可解决问题。如果仍卡住,检查本地网络环境或尝试更换设备测试,排除个别配置影响。










