Composer安装依赖超时,国内镜像源配置
前言
composer install 装依赖,半天没反应,最后超时失败?那是因为默认的源在国外,国内访问慢。换个国内镜像就快了。
一、为什么会超时
Composer默认从 packagist.org 下载包,服务器在国外,国内访问慢,经常超时。
换个国内镜像源,速度飞快。
二、常用国内镜像
1. 阿里云镜像
https://mirrors.aliyun.com/composer/
2. 腾讯云镜像
https://mirrors.tencent.com/composer/
3. 华为云镜像
https://mirrors.huaweicloud.com/repository/php/
4. 豆瓣镜像(老了,不推荐)
https://packagist.phpcomposer.com
三、全局配置镜像
方法1:命令行配置
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
方法2:改config文件
编辑 ~/.composer/config.json:
{
"repositories": {
"packagist": {
"type": "composer",
"url": "https://mirrors.aliyun.com/composer/"
}
}
}
查看当前镜像
composer config -g repo.packagist
四、项目单独配置
在项目根目录的 composer.json 里加:
{
"repositories": {
"packagist": {
"type": "composer",
"url": "https://mirrors.aliyun.com/composer/"
}
}
}
或者用命令:
composer config repo.packagist composer https://mirrors.aliyun.com/composer/
五、临时使用镜像
不想改全局配置,临时用一次:
composer install --prefer-dist -vvv --repository-url=https://mirrors.aliyun.com/composer/
六、其他常用配置
1. 禁用github接口调用
有时候github的API调用会卡住,禁用掉:
composer config -g github-protocols https
2. 国内composer下载地址
安装composer的时候也慢,用国内下载:
php -r "copy('https://mirrors.aliyun.com/composer/composer.phar', 'composer.phar');"
3. 查看配置
composer config -g --list
七、安装依赖
安装
composer install
更新
composer update
加-v看详细过程
composer install -vvv
八、常见坑
坑1:装了还是慢
缓存没清。
解决:
composer clear-cache
坑2:报SSL错误
SSL certificate problem
解决: 关掉SSL验证(不推荐临时用):
composer config -g secure-http false
坑3:提示文件权限不够
Failed to download ...
解决: 目录权限不对。
chmod -R 777 vendor
chmod -R 777 composer.json
坑4:内存不够
Allowed memory size of ... bytes exhausted
解决: 加大内存:
php -d memory_limit=-1 /usr/local/bin/composer install
坑5:镜像也挂了
阿里云镜像有时候也抽风。
解决: 换一个镜像,比如腾讯云的。
九、验证镜像生效
查看当前镜像源
composer config -g repo.packagist
输出应该是你设的阿里云地址。
装个小包试试速度
composer require monolog/monolog
看下载速度快不快。
十、推荐配置
一键配置阿里云镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
清缓存
composer clear-cache
安装
composer install
总结
记住:
- 慢就换国内镜像,阿里云的最稳
- 全局配置:
composer config -g repo.packagist composer 地址 - 不行就清缓存:
composer clear-cache - 换镜像:阿里云、腾讯云、华为云
- 临时用:加
--repository-url=地址
最常用:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
遇到问题加QQ23979811 协助处理