在項目開發的時候 有許多新的依賴要按照 就需要用到composer
但是由於國內安裝下載速度賊慢(國外的網站連接速度太慢,並且隨時可能被牆) 安裝一個excel擴展(composer require maatwebsite/excel ~2.1) 要用一個小時...
學習源頭:https://www.cnblogs.com/dongruiha/p/6604973.html
http://muxucao.cn/news-132.html
https://pkg.phpcomposer.com/
鏡像用法
有兩種方式啟用本鏡像服務:
- 系統全局配置: 即將配置信息添加到 Composer 的全局配置文件
config.json
中。見“方法一” - 單個項目配置: 將配置信息添加到某個項目的
composer.json
文件中。見“方法二”
方法一: 修改 composer 的全局配置文件(推薦方式)
打開命令行窗口(windows用戶)或控制台(Linux、Mac 用戶)並執行如下命令:
composer config -g repo.packagist composer https://packagist.phpcomposer.com
方法二: 修改當前項目的 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.*"
},
"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
發生故障(主要是連接速度太慢和被牆),你仍然可以下載、更新安裝包。