轉自:http://blog.csdn.net/fishermanmax/article/details/51975692
Packagist 鏡像
請各位使用本鏡像的同學注意:
本鏡像已經依照 composer 官方的數據源安全策略完全升級並支持 https 協議!請各位同學 按照下面所示的兩個方法將 http://packagist.phpcomposer.com
修改為https://packagist.phpcomposer.com
還沒安裝 Composer 嗎?請往下看如何安裝 Composer 。
用法:
有兩種方式啟用本鏡像服務:
- 系統全局配置: 即將配置信息添加到 Composer 的全局配置文件
config.json
中。見“例1” - 單個項目配置: 將配置信息添加到某個項目的
composer.json
文件中。見“例2”
打開命令行窗口(windows用戶)或控制台(Linux、Mac 用戶)並執行如下命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
例2:修改當前項目的 composer.json
配置文件:
打開命令行窗口(windows用戶)或控制台(Linux、Mac 用戶),進入你的項目的根目錄(也就是composer.json
文件所在目錄),執行如下命令:
composer config repo.packagist composer https://packagist.phpcomposer.com
上述命令將會在當前項目中的 composer.json
文件的末尾自動添加鏡像的配置信息(你也可以自己手工添加):
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" } }
以 laravel 項目的 composer.json
配置文件為例,執行上述命令后如下所示(注意最后幾行):
{
"name": "laravel/laravel", "description": "The Laravel Framework.", "keywords": ["framework", "laravel"], "license": "MIT", "type": "project", "require": { "php": ">=5.5.9", "laravel/framework": "5.2.*" }, "require-dev": { "fzaninotto/faker": "~1.4", "mockery/mockery": "0.9.*", "phpunit/phpunit": "~4.0", "symfony/css-selector": "2.8.*|3.0.*", "symfony/dom-crawler": "2.8.*|3.0.*" }, "autoload": { "classmap": [ "database" ], "psr-4": { "App\\": "app/" } }, "autoload-dev": { "classmap": [ "tests/TestCase.php" ] }, "scripts": { "post-root-package-install": [ "php -r \"copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "php artisan key:generate" ], "post-install-cmd": [ "php artisan clear-compiled", "php artisan optimize" ], "pre-update-cmd": [ "php artisan clear-compiled" ], "post-update-cmd": [ "php artisan optimize" ] }, "config": { "preferred-install": "dist" }, "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
發生故障(主要是連接速度太慢和被牆),你仍然可以下載、更新安裝包。
如何安裝 Composer
打開命令行並執行下列命令安裝最新版本的 Composer (以下指令摘自 https://getcomposer.org/download/ ,請前往查看最新的安裝指令):
php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php php composer-setup.php php -r "unlink('composer-setup.php');"
執行第一條命令下載下來的 composer-setup.php
腳本將簡單的檢測 php.ini
中的參數設置,如果某些參數未正確設置則會給出警告;然后下載最新版本的 composer.phar
文件到當前目錄。
上述 3 條命令的作用依次是:
- 下載安裝腳本(
composer-setup.php
)到當前目錄。 - 執行安裝過程。
- 刪除安裝腳本 --
composer-setup.php
。
局部安裝
上述下載 Composer 的過程正確執行完畢后,可以將 composer.phar
文件復制到任意目錄(比如項目根目錄下),然后通過 php composer.phar
指令即可使用 Composer 了!
全局安裝
全局安裝是將 Composer 安裝到系統環境變量 PATH
所包含的路徑下面,然后就能夠在命令行窗口中直接執行 composer
命令了。
Mac 或 Linux 系統:打開命令行窗口並執行如下命令將前面下載的 composer.phar
文件移動到/usr/local/bin/
目錄下面:
sudo mv composer.phar /usr/local/bin/composer
Windows 系統:
- 找到並進入 PHP 的安裝目錄(和你在命令行中執行的
php
指令應該是同一套 PHP)。 - 將
composer.phar
復制到 PHP 的安裝目錄下面,也就是和php.exe
在同一級目錄。 - 在 PHP 安裝目錄下新建一個
composer.bat
文件,並將下列代碼保存到此文件中。
@php "%~dp0composer.phar" %*
最后重新打開一個命令行窗口試一試執行 composer --version
看看是否正確輸出版本號。
最后
提示:不要忘了經常執行
composer selfupdate
以保持 Composer 一直是最新版本哦!