最有效解法是更换国内镜像源:临时用–repository参数、全局用composer config -g repo.packagist、项目级用composer config repo.packagist,需注意各源最新地址及失效处理。
Composer 下载慢,根本原因不是网络差,而是默认源 packagist.org 服务器在境外,且未启用国内 CDN。直接换国内镜像源是最有效解法,不需要改 hosts、装代理或折腾全局加速工具。
怎么临时切换镜像源(单次命令生效)
适合快速验证某个包能否安装成功,不改动本地配置:
- 运行
composer create-project laravel/laravel demo --repository=https://packagist.phpcomposer.com(旧版阿里/腾讯镜像已停用,慎用) - 更推荐用华为或阿里云当前可用源:
composer create-project laravel/laravel demo --repository=https://mirrors.huaweicloud.com/repository/php - 注意:
--repository只影响本次命令的包解析,composer install或composer update不会继承该设置
怎么永久修改全局镜像源(推荐方式)
执行一条命令即可,所有后续项目都走镜像源:
- 运行
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/(阿里云源,稳定常用) - 或换华为源:
composer config -g repo.packagist composer https://mirrors.huaweicloud.com/repository/php - 确认是否生效:执行
composer config -g repo.packagist,输出应为对应 URL - 如果提示 “No repositories configured”,说明配置未写入全局配置文件,可手动检查
~/.composer/config.json(Linux/macOS)或%USERPROFILE%\AppData\Roaming\Composer\config.json(Windows)
怎么为单个项目单独设镜像源
团队协作或测试不同源时需要,优先级高于全局设置: