学习网站

Composer 中文网

资源包 Packagist

Packagist / Composer 中国全量镜像

如何安装 Composer

下载 Composer

安装前请务必确保已经正确安装了PHP。打开命令行窗口并执行php -v查看是否正确输出版本号。

打开命令行并依次执行下列命令安装最新版本的 Composer:

php -r "copy('https://install.phpcomposer.com/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 的过程正确执行完毕后,可以将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 一直是最新版本哦!

Packagist 镜像使用方法

有两种方式启用本镜像服务:

系统全局配置:即将配置信息添加到 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发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。

转载于:https://juejin.im/post/5aa7702f518825556b6c74be

Composer 篇相关推荐

  1. VMware View 5.0从菜鸟到高手系列 3 -安装View Composer组件篇

    在vCenter Server上安装View Composer组件 View Composer具有非常强大的功能,可以为企业快速部署成千上万的虚拟桌面并为企业节省近70%的存储空间. 1. 安装Vie ...

  2. composer爆错:zlib_decode():data error

    昨晚用nginx运行Yii的一个开源小项目,结果composer安装依赖一直报错,如下 Failed to decode response: zlib_decode(): data error 如果遇 ...

  3. View 5.1 重装上阵(4—基础架构篇)

    从底层架构方面来看,VIEW 5.1最大的改进在于引入了Content-Based Read Cache(CBRC) 技术,大大降低了部署桌面虚拟化所带来的IOPS风暴,同时大大降低了对于存储的压力和 ...

  4. 【完结】利用 Composer 完善自己的 PHP 框架(三)——Redis 缓存

    本教程示例代码见 https://github.com/johnlui/My-First-Framework-based-on-Composer 回顾 上两篇文章中我们完成了 View 视图加载类和 ...

  5. composer更新_深入学习Composer原理(四)

    本系列第四篇文章,也是最后一篇 首先,我们先看看Composer的源码从哪里看起.当然,请您先准备好源码. composer init或者直接install之后,自动生成了一个vendor目录,这时您 ...

  6. VMware View 5.0从菜鸟到高手系列 10 –远程图形工作站配置篇

    本文档依照PCoIP设备供应商丽台(Leadtek)提供的零客户机VP200P以及PCoI卡VP200H为例,为了介绍整个安装步骤.以下配置在VMware view 4.5中安装,但在更新的版本中如V ...

  7. Composer入门

    2019独角兽企业重金招聘Python工程师标准>>> Java有Maven, Node.js有npm, ROR有gem, 这些语言的程序员在开心地使用包管理工具加速开发效率时,PH ...

  8. php传值到模板,laravel 实现向公共模板中传值 (view composer)

    view composers 与视图有关,用在一个service provider 的boot()函数里,就是让一个view加载的时候,由于view composer的作用,去调用某个函数传个参啊啥的 ...

  9. Fiddler (三) Composer创建和发送HTTP Request

    之前已经写过两篇Fiddler的文章了,分别是[Fiddler教程] [Fiddler script用法].  我准备把Fiddler写成一个系列. Fiddler的功能还有很多, 很多功能都没有被挖 ...

最新文章

  1. 人工脑连接体:类脑人工智能的奇点时刻来临
  2. mysql-sql优化--笔记
  3. python匹配中文
  4. JAVA(小技巧--List)
  5. golang 对象 struct 类型转json
  6. asp.net mvc kendo Grid Filter
  7. c++重载、覆盖和隐藏
  8. opencv 的norm_OpenCV学习笔记(一)之图像金字塔-上采样与降采样与DOG
  9. VueRouter基础知识记录1
  10. 5月书讯丨​​《联邦学习》带队,10新书给你全方位的技能提升
  11. 网上订餐系统开源代码java_基于SSM实现的网上订餐系统【附源码】(毕设)
  12. 关机一直显示正在关闭服务器,电脑关机后,显示正在关机,但等半天也关不了 怎么办...
  13. 可用的rtmp卫视直播地址
  14. 8.MIL中相机标定(Calibration)
  15. 2021-09-18 Stage/Job cancelled because SparkContext was shut down
  16. python爬虫----爬取网易云音乐
  17. ZYNQ Linux 添加I2C-RTC驱动
  18. 余数的数学定义和性质
  19. 【转】一位硕士毕业生三个月求职经历与经验的结晶
  20. UDK 中的委托使用

热门文章

  1. 提高C++性能的编程技术笔记:多线程内存池+测试代码
  2. OpenCV中SVM的使用
  3. 什么场景使用mysql的存储过程_mysql存储过程的使用
  4. android 编程klinon,android - 您尚未接受以下SDK组件的许可协议
  5. linux日志idProduct,linux – 机器ID是uuid吗?
  6. plasma桌面设置好的面板消失了_Ubuntu Studio 将用 KDE Plasma 桌面环境替换 Xfce | Linux 中国...
  7. yum安装mysql后密码_Centos7:yum安装MySQL5.7后如何设置root密码
  8. Java项目:仿天猫网上商城项目(java+jsp+servlet+mysql+ajax)
  9. matlab文件启动位置,matlab中uigetfile()设置默认路径
  10. python 文案自动生成_Python自动化测试如何自动生成测试用例?