composer是一个PHP的依赖管理工具,windos下安装经常被墙,现提供一个手动安装的方法,仅供参考
一、安装前准备
(1)Composer需要PHP 5.3.2+才能运行
(2)php运行目录加入path变量。即确保任何地方打开cmd都能直接运行php -v
(3)确保php 开启openssl扩展到php.ini里搜索OpenSSL,去掉前面的分号,保存重启服务器。
二、安装配置composer
(1)下载composer.phar
https://getcomposer.org/composer.phar 下载到本地(例如D:\tools\composer)
cmd 运行
1 2 3 |
cd D:\tools\composer D: php composer.phar -v |
(2)将composer.phar所在目录加入path环境变量
(3)创建composer快捷命令
1 2 3 |
cd D:\tools\composer D: echo @php "%~dp0composer.phar" %*>composer.bat |
则在D:\tools\composer 创建了一个composer.bat批处理文件,而D:\tools\composer已经加到环境变量中,以后再任意地方输入composer可同等于
php composer.phar
(4)修改镜像
中国镜像地址:https://packagist.phpcomposer.com
可以全局设置也可以按需要设置
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置
全局设置
查看 composer 主目录:通过 composer config -l -g 命令可以列出 composer 的全局配置信息,在这些信息中查找[home] 配置项就是 composer 的主目录。
进入 composer 的主目录,打开 config.json 文件(如果没有就自己创建一个),然后增加本镜像服务的配置信息,最终内容如下:
1 2 3 4 5 6 7 8 9 |
{ "config": { }, "repositories": [ {"type": "composer", "url": "https://packagist.phpcomposer.com"}, {"packagist": false} ] } |
也可以直接执行
1 |
composer config -g repo.packagist composer https://packagist.phpcomposer.com |
按需设置
如果只需要特定的项目指定特定的镜像,则不需修改全局设置,在需要的地方进行修改当前项目的 composer.json 配置文件
打开命令行窗口(windows用户)或控制台(Linux、Mac 用户),进入你的项目的根目录(也就是 composer.json 文件所在目录),执行如下命令:
1 |
composer config repo.packagist composer https://packagist.phpcomposer.com |
上述命令将会在当前项目中的 composer.json 文件的末尾自动添加镜像的配置信息(你也可以自己手工添加):
1 2 3 4 5 6 |
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } } |
OK,一切搞定!试一下 composer install 来体验飞一般的速度吧!
镜像原理:
一般情况下,安装包的数据(主要是 zip 文件)一般是从 github.com 上下载的,安装包的元数据是从 packagist.org 上下载的。
然而,由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。
“Packagist 中国全量镜像”所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求,从而达到加速 composer install 以及 composer update 的过程,并且更加快速、稳定。因此,即使 packagist.org、github.com 发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。