1. 程式人生 > >composer更換為國內映象源

composer更換為國內映象源

最近在下載Laravel和yii的外掛時總是卡住半天下不動,把composer的映象更換為國內的即可。主要有以下兩種方式(轉自composer中文網):

將配置資訊新增到 Composer 的配置檔案 config.json 中(系統全域性配置)。

1、開啟命令列視窗(windows使用者)或控制檯(Linux、Mac 使用者)並執行如下命令:


composer config -g repositories.packagist composer http://packagist.phpcomposer.com

例2:以 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.1.*"
    },
    "require-dev": {
        "fzaninotto/faker
": "~1.4", "mockery/mockery": "0.9.*", "phpunit/phpunit": "~4.0", "phpspec/phpspec": "~2.1" }
, "autoload": { "classmap": [ "database" ], "psr-4": { "App\\": "app/" } }, "autoload-dev": { "classmap": [ "tests/TestCase.php"
]
}
, "scripts": { "post-install-cmd": [ "php artisan clear-compiled", "php artisan optimize" ], "pre-update-cmd": [ "php artisan clear-compiled" ], "post-update-cmd": [ "php artisan optimize" ], "post-root-package-install": [ "php -r \"copy('.env.example', '.env');\"" ], "post-create-project-cmd": [ "php artisan key:generate" ] }, "config": { "preferred-install": "dist" }, "repositories": [ {"type": "composer", "url": "http://packagist.phpcomposer.com"}, {"packagist": false} ] }
注意:為了避免安裝包的時候都要執行兩次查詢,切記要新增禁用 packagist 的設定,如下:

{
    "repositories": [
        {"type": "composer", "url": "http://packagist.phpcomposer.com"},
        {"packagist": false}
    ]
}

使用本映象服務就意味著下載的所有的安裝包元資料都將來自本映象服務,而不再向 packagist.org 發起請求。這將加速 Composer 的安裝過程,並且更加可靠、快速。(由於眾所周知的原因,國外的網站連線速度太慢,並且隨時可能被牆)

一般情況下,安裝包的資料(zip 檔案等)一般是從 GitHub 或其他第三方伺服器上下載的,使用本映象服務後,我們會快取所有安裝包到國內的機房,這樣就不必再去向國外的網站發起請求,因此,即使 packagist.org、github.com 或其他第三方服務發生故障(主要是連線速度太慢和被牆),你仍然可以下載、更新安裝包。