一、总结

一句话总结:出现原因是https://packagist.phpcomposer.com/这个镜像站出现了问题

问题的实质是phpstudy中自带的composer不能用,自己在电脑上面再重新下载安装一个,就一切正常了

在浏览器的地址栏直接访问这个地址,会出现403错误:



{"statusCode":403,"code":"AccountArrear","message":"There is an arrear problem with this JSS account that prevents the operation from completing successfully","resource":"/json-packagist-com-cn/","requestId":"87C62F713ECC933B"}



 

package json 指定npm仓库_ViewUI

 

 解决方法:给composer换一个镜像站就好了

 

1、composer如何查看镜像地址?



composer查看全局设置:

composer config -gl

设置composer镜像为国内镜像:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

上面地址前几天崩了,可以用下面这个:

composer config -g repo.packagist composer https://packagist.laravel-china.org
Do not run Composer as root/super user! See https://getcomposer.org/root for details
[repositories.packagist.org.type] composer
[repositories.packagist.org.url] https://packagist.phpcomposer.com



 



 

2、几个常见的 Composer 国内镜像?

 

几个常见的 Composer 国内镜像



现在写PHP好象不用Composer总感觉有点Low了吧?好吧,即使这样,你在使用composer update的时候是不是也发现网速、进度low的不行。一个composer update要等半天。不说这个吧,你就是一个composer init也要等半天,这只是个空项目,你都要等这么久?composer 如果不加-vvv参数,你就感觉整个世界都停在那里了。所以,如果连接原始的composer还是加个-vvv参数吧

国内常见镜像有三个:

http://pkg.phpcomposer.com/  
https://toran.reimu.io/  
http://packagist.cn/

使用方法很简单一种是在~/.composer/config.json中加入相应的信息,一种是在当前项目的composer.json中加入:


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

加入的时候注意语法,如果是json的最后一个元素,记得不要加","即可,否则 会报错

OK这样就可以了,尽情的尝试吧(packagist.cn更新的有点慢,toran.reimu.io 是https的,如果你本机openssl版本低可能会更新失败)。好象话这么一说,只能用pkg.phpcomposer.com的源了(嗯,忍忍吧,如果他不能用,你再换)

 



3、如何修改composer镜像?



方法一: 修改 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 发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。

 



 

 

 

 

二、内容在总结中

 

 

composer查看全局设置:

composer config -gl

设置composer镜像为国内镜像:

composer config -g repo.packagist composer https://packagist.phpcomposer.com

上面地址前几天崩了,可以用下面这个:

composer config -g repo.packagist composer https://packagist.laravel-china.org
Do not run Composer as root/super user! See https://getcomposer.org/root for details
[repositories.packagist.org.type] composer
[repositories.packagist.org.url] https://packagist.phpcomposer.com