Composer国内镜像配置
Composer国内镜像配置
引言
PHP项目用Composer安装依赖时,默认从packagist.org国外源拉取,国内网络经常超时、下载极慢。配置国内镜像源后,安装速度能提升数倍,是PHP开发环境必备操作。
全局配置方法
终端执行下面命令,把全局镜像换成国内源:
composer config -g repos.packagist composer https://mirrors.aliyun.com/composer/
执行后写入用户全局配置,所有项目生效。
单个项目配置
只给当前项目换源,在项目目录执行:
composer config repositories.packagist composer https://mirrors.aliyun.com/composer/
常见国内镜像
- 阿里云镜像:https://mirrors.aliyun.com/composer/
- 腾讯云镜像:https://mirrors.cloud.tencent.com/composer/
- 华为云镜像:https://repo.huaweicloud.com/repository/php/
验证与切换
#查看当前源
composer config -g repos
#回到官方源
composer config -g --unset repos.packagist
注意事项
- 镜像只加速包下载,不影响代码本身;
- 生产环境尽量锁定composer.lock版本;
- 个别新包国内镜像同步延迟,临时可切官方源;
- 配置后先清缓存再安装:
composer clearcache。
总结
Composer换源是国内PHP开发第一步,全局配置阿里云镜像即可解决大部分超时问题。安装依赖前先清缓存,项目锁定lock保证团队版本一致。
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 协助处理
PHP Composer 使用指南
PHP Composer 使用指南
Composer 是 PHP 的依赖管理工具,做开发必备。
1. 安装 Composer
# 下载安装
curl -sS https://getcomposer.org/installer | php
# 移动到全局
mv composer.phar /usr/local/bin/composer
# 验证
composer -V
2. 国内镜像加速
# 阿里镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
3. 常用命令
1)初始化项目:
composer init
2)安装依赖:
# 安装所有依赖
composer install
# 安装指定包
composer require monolog/monolog
# 安装开发依赖
composer require --dev phpunit/phpunit
3)更新依赖:
# 更新所有依赖
composer update
# 更新指定包
composer update monolog/monolog
4)删除依赖:
composer remove monolog/monolog
4. composer.json 说明
{
"name": "test/project",
"description": "测试项目",
"require": {
"php": ">=7.0",
"monolog/monolog": "^2.0"
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}
5. 自动加载
// 引入自动加载
require __DIR__ . '/vendor/autoload.php';
// 使用类
$log = new Monolog\Logger('name');
6. 常用操作
composer install:根据 lock 文件安装composer update:更新依赖composer dump-autoload:重新生成自动加载
总结
Composer 使用要点:
- 安装 Composer
- 配置国内镜像
- require 安装依赖
- autoload 自动加载
- install/update 管理依赖
做 PHP 开发,Composer 一定要会用。
PHP Composer 使用指南
PHP Composer 使用指南
Composer 是 PHP 的包管理工具,现在做 PHP 开发离不开它。这篇讲常用用法。
1. 安装 Composer
# 下载安装
curl -sS https://getcomposer.org/installer | php
# 移动到全局目录
mv composer.phar /usr/local/bin/composer
# 验证
composer -V
2. 换国内镜像
国外源太慢,换阿里云镜像:
# 全局配置
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# 验证
composer config -g -l | grep repo
3. 常用命令
初始化项目:
composer init
安装依赖:
# 安装所有依赖
composer install
# 安装指定包
composer require monolog/monolog
# 安装开发依赖
composer require --dev phpunit/phpunit
更新依赖:
# 更新所有依赖
composer update
# 更新指定包
composer update monolog/monolog
移除依赖:
composer remove monolog/monolog
查看依赖:
# 查看已安装包
composer show
4. composer.json 说明
{
"name": "my/blog",
"description": "个人博客",
"require": {
"php": ">=7.0",
"monolog/monolog": "^2.0"
},
"require-dev": {
"phpunit/phpunit": "^9.0"
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}
autoload 自动加载:
// 引入自动加载
require __DIR__ . '/vendor/autoload.php';
5. 常用框架安装
Laravel:
composer create-project laravel/laravel blog
ThinkPHP:
composer create-project topthink/think tp
6. 常见问题
1)内存不足:
COMPOSER_MEMORY_LIMIT=-1 composer update
2)安装失败:
- 换国内镜像
- 检查 PHP 扩展(openssl、zip)
3)自动加载不生效:
composer dump-autoload
总结
Composer 常用命令就这几个:
- install:安装
- require:添加包
- update:更新
- remove:移除
- autoload:自动加载
做 PHP 开发,Composer 一定要用熟,效率提升很多。
PHP Composer 入门指南
PHP Composer 入门指南
Composer 是 PHP 的依赖管理工具,现在做 PHP 开发不用 Composer 几乎不可能。
1. 安装 Composer
# Linux/Mac
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
# Windows 直接下载安装包
# https://getcomposer.org/Composer-Setup.exe
验证安装:
composer -V
2. 换国内镜像(必须)
官方镜像太慢,一定要换国内镜像:
# 阿里云镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# 腾讯云镜像
composer config -g repo.packagist composer https://mirrors.tencent.com/composer/
3. 初始化项目
# 进入项目目录
cd myproject
# 初始化 composer.json
composer init
或者手动创建 composer.json:
{
"name": "my/project",
"require": {
"monolog/monolog": "^2.0"
}
}
4. 常用命令
# 安装依赖
composer install
# 更新依赖
composer update
# 安装某个包
composer require monolog/monolog
# 卸载某个包
composer remove monolog/monolog
# 自动加载
composer dump-autoload
5. 自动加载
// 引入自动加载文件
require __DIR__ . '/vendor/autoload.php';
// 然后就可以直接用第三方库了
$log = new Monolog\Logger('name');
6. composer.json 详解
{
"name": "项目名",
"description": "项目描述",
"type": "project",
"require": {
"php": ">=7.4",
"monolog/monolog": "^2.0",
"guzzlehttp/guzzle": "^7.0"
},
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}
7. 版本号说明
^2.0:兼容 2.0 到 3.0(不包含 3.0)~2.0:兼容 2.0 到 2.1(不包含 2.1)*:任意版本2.0.*:2.0.x 版本
总结
Composer 核心:
- 安装:一行命令
- 换镜像:必须换国内源
- 常用:install / update / require / remove
- 自动加载:require vendor/autoload.php
搞懂这些,Composer 日常开发就够用了。
PHP Composer 入门:依赖管理完全指南
前言
Composer 是 PHP 的依赖管理工具,就像 Node 的 npm、Python 的 pip。现在写 PHP 项目,不会 Composer 根本没法干活。本文讲清楚 Composer 的核心用法。
一、安装 Composer
Linux / Mac
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
Windows
去官网下载安装包,一路下一步就行。
验证安装
composer -V
二、初始化项目
# 在项目目录下
composer init
会问你几个问题,一路回车就行,然后会生成 composer.json 文件。
composer.json 长什么样
{
"name": "yourname/project",
"description": "项目描述",
"require": {
"monolog/monolog": "^2.0"
}
}
三、安装依赖
1. 安装所有依赖
composer install
会根据 composer.lock 文件安装指定版本的依赖。
2. 添加新依赖
composer require monolog/monolog
会自动加到 composer.json 里,然后安装。
3. 安装指定版本
composer require monolog/monolog:^2.0
版本号说明
^2.0:2.0 到 3.0 之前(不包括 3.0)~2.0:2.0 到 2.1 之前(不包括 2.1)*:任意版本2.0.*:2.0 开头的版本
四、自动加载
Composer 最爽的就是自动加载,不用自己写 require。
引入自动加载
<?php
require 'vendor/autoload.php';
// 直接用类,不用 require
$log = new Monolog\Logger('name');
PSR-4 自动加载
在 composer.json 里配置:
{
"autoload": {
"psr-4": {
"App\\": "src/"
}
}
}
然后执行:
composer dump-autoload
这样 App\User 类就会从 src/User.php 加载。
五、常用命令
| 命令 | 作用 |
|---|---|
composer install |
安装所有依赖 |
composer update |
更新所有依赖 |
composer require 包名 |
添加依赖 |
composer remove 包名 |
删除依赖 |
composer dump-autoload |
重新生成自动加载 |
composer show |
查看已安装的包 |
composer self-update |
更新 Composer 本身 |
六、开发环境依赖
有些包只在开发时用,比如测试工具:
composer require --dev phpunit/phpunit
线上部署的时候,不安装开发依赖:
composer install --no-dev
七、中国镜像
国外源太慢,换中国镜像:
# 阿里云镜像
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
# 腾讯云镜像
composer config -g repo.packagist composer https://mirrors.tencent.com/composer/
换完之后速度飞起来。
八、composer.lock 的作用
- 记录当前安装的依赖版本
- 团队成员 install 的时候,装的版本一模一样
- 一定要提交到 Git
git add composer.json composer.lock
git commit -m "update composer"
九、常见坑
- 没装 composer.lock:团队成员装的版本不一样,出 bug
- 自动加载不生效:改了 autoload 配置,忘了 dump-autoload
- 版本冲突:两个包依赖同一个库的不同版本
- 国内太慢:不换镜像,下载半天
十、最佳实践
- composer.json 和 composer.lock 都提交 Git
- 线上用 install --no-dev,不要用 update
- 用中文镜像,加速下载
- 改了自动加载配置,记得 dump-autoload
总结
Composer 的核心要点:
- require 添加依赖,install 安装依赖
- vendor/autoload.php 是自动加载入口
- composer.lock 要提交 Git,保证版本一致
- 换国内镜像,速度快很多
- 开发依赖用 --dev,线上不装
学会 Composer,PHP 开发效率提升一倍。