Composer安装与使用

一)、window 安装composer

1、安装步骤:http://docs.phpcomposer.com/00-intro.html;

基本用法:http://docs.phpcomposer.com/01-basic-usage.html;

或者下载地址(composer.phar和Composer-Setup.exe):https://getcomposer.org/download/ ;

 2、安装之后修改为中国区的镜像 http://pkg.phpcomposer.com/

二)、centos环境 安装composer

(引用:http://blog.csdn.net/ljl890705/article/details/78783201

具体可参考CentOS7搭建LAMPR环境完整教程 这篇以前写的文章。

 

安装yii2(https://www.cnblogs.com/ec04/p/5759055.html)

1、clone:https://github.com/yiisoft/yii2-app-basic

2、把下载的composer.phar放到yii2-app-basic目录里面

3、cmd进入项目目录,执行:php composer.phar global require "fxp/composer-asset-plugin:1.4.3" 

(1.4.3最新版本号看:https://packagist.org/packages/fxp/composer-asset-plugin#dev-master)

4、出现install fail ,执行:composer update

5、如果是高级版的前后台配置如:https://www.cnblogs.com/secretxinyu/p/5703526.html

6、后台安装adminlet模板:https://segmentfault.com/a/1190000010187332?utm_source=debugrun&utm_medium=referral

7、修改php.ini (该网页无法正常运作 目前无法处理此请求。 HTTP ERROR 500)

display_errors = On
display_startup_errors = On

8、/vendor/yiisoft/yii2/base/Application.php修改

屏蔽//Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower');
改成 Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower-asset');

9、生成user表:yii.bat migrate

 

安装Laravel

安装Composer

安装composer是第一步要做的事情,也是最重要的一步,如果这一步完成不了,那也就无法向下进行了。 
推荐使用composer中国全量镜像来进行操作,不推荐使用官方方式。 
Packagist / Composer中国全量镜像

执行以下命令安装composer(确保你的php在env path中,如果不在,请使用绝对路径):

php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"

php composer-setup.php

执行完以上两条命令后,会发现下载下来一个composer-setup.php文件和composer.phar文件,有用的就是这个composer.phar文件了,将它移动到env path相关的目录下并重命名为composer。

[root@vm composer]# 
[root@vm composer]# ls
composer.phar  composer-setup.php
[root@vm composer]# env | grep PATH
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/bin/yasm/bin:/root/bin
[root@vm composer]# 
[root@vm composer]# cp composer.phar /usr/local/sbin/composer
[root@vm composer]# composer
Do not run Composer as root/super user! See https://getcomposer.org/root for details
   ______
  / ____/___  ____ ___  ____  ____  ________  _____
 / /   / __ \/ __ `__ \/ __ \/ __ \/ ___/ _ \/ ___/
/ /___/ /_/ / / / / / / /_/ / /_/ (__  )  __/ /
\____/\____/_/ /_/ /_/ .___/\____/____/\___/_/
                    /_/
Composer version 1.5.3 2017-11-30 18:29:43

当你在命令行直接输入执行composer有如上输出时,就表示composer已经安装成功了。 
请注意:按以上操作安装成功后,在“/root/.config/”下会生成一个composer目录。

[root@vm composer]# ls /root/.config/composer/
keys.dev.pub  keys.tags.pub

安装Laravel

推荐使用国内的Laravel 中国 
执行以下指令安装Laravel

[root@vm composer]# composer global require "laravel/installer"

等待一会儿之后,laravel就安装到系统中了。 
看文档操作,这时候是不是到了执行laravel new blog来创建一个项目的时候了?但是你执行laravel却提示没有此命令? 
原来laravel指令在这里,我们上面说到的目录:

[root@vm composer]# ls /root/.config/composer/vendor/bin/laravel 
/root/.config/composer/vendor/bin/laravel

所以,执行的时候需要这样执行:

[root@vm composer]# /root/.config/composer/vendor/bin/laravel new blog
Crafting application...

稍等一段时间后,就会看到blog已经创建好了。(如果提示缺少一些软件包的话,记得安装上)

[root@vm composer]# ls 
blog
[root@vm composer]# cd blog/
[root@vm blog]# ll
total 428
drwxr-xr-x  6 root root   4096 Dec 12 16:32 app
-rw-r--r--  1 root root   1686 Dec 12 16:32 artisan
drwxr-xr-x  3 root root   4096 Dec 12 16:32 bootstrap
-rw-r--r--  1 root root   1379 Dec 12 16:32 composer.json
-rw-r--r--  1 root root 141894 Dec 12 16:32 composer.lock
drwxr-xr-x  2 root root   4096 Dec 12 16:32 config
drwxr-xr-x  5 root root   4096 Dec 12 16:32 database
-rw-r--r--  1 root root   1125 Dec 12 16:32 package.json
-rw-r--r--  1 root root   1040 Dec 12 16:32 phpunit.xml
drwxr-xr-x  4 root root   4096 Dec 12 16:32 public
drwxr-xr-x  5 root root   4096 Dec 12 16:32 resources
drwxr-xr-x  2 root root   4096 Dec 12 16:32 routes
-rw-r--r--  1 root root    563 Dec 12 16:32 server.php
drwxr-xr-x  5 root root   4096 Dec 12 16:32 storage
drwxr-xr-x  4 root root   4096 Dec 12 16:32 tests
drwxr-xr-x 36 root root   4096 Dec 12 16:32 vendor
-rw-r--r--  1 root root    549 Dec 12 16:32 webpack.mix.js
-rw-r--r--  1 root root 227362 Dec 12 16:32 yarn.lock
[root@vm blog]# cd ..

记得查看一下自己系统的web server用户,然后修改一下此目录的相关权限:

[root@vm composer]# ps -ef | grep httpd
root      5234     1  0 11:26 ?        00:00:01 /usr/sbin/httpd -DFOREGROUND
apache    5235  5234  0 11:26 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache    5236  5234  0 11:26 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root     26597 25290  0 16:46 pts/2    00:00:00 grep --color=auto httpd
[root@vm composer]# 
[root@vm composer]# chown apache:apache -R blog/
[root@vm composer]# ll
total 4
drwxr-xr-x 12 apache apache 4096 Dec 12 16:32 blog
[root@vm composer]# ll blog/
total 428
drwxr-xr-x  6 apache apache   4096 Dec 12 16:32 app
-rw-r--r--  1 apache apache   1686 Dec 12 16:32 artisan
drwxr-xr-x  3 apache apache   4096 Dec 12 16:32 bootstrap
-rw-r--r--  1 apache apache   1379 Dec 12 16:32 composer.json
-rw-r--r--  1 apache apache 141894 Dec 12 16:32 composer.lock
drwxr-xr-x  2 apache apache   4096 Dec 12 16:32 config
drwxr-xr-x  5 apache apache   4096 Dec 12 16:32 database
-rw-r--r--  1 apache apache   1125 Dec 12 16:32 package.json
-rw-r--r--  1 apache apache   1040 Dec 12 16:32 phpunit.xml
drwxr-xr-x  4 apache apache   4096 Dec 12 16:32 public
drwxr-xr-x  5 apache apache   4096 Dec 12 16:32 resources
drwxr-xr-x  2 apache apache   4096 Dec 12 16:32 routes
-rw-r--r--  1 apache apache    563 Dec 12 16:32 server.php
drwxr-xr-x  5 apache apache   4096 Dec 12 16:32 storage
drwxr-xr-x  4 apache apache   4096 Dec 12 16:32 tests
drwxr-xr-x 36 apache apache   4096 Dec 12 16:32 vendor
-rw-r--r--  1 apache apache    549 Dec 12 16:32 webpack.mix.js
-rw-r--r--  1 apache apache 227362 Dec 12 16:32 yarn.lock
[root@vm composer]# 

storage与vendor两个目录权限也要修改一下:

[root@vm blog]# chmod 777 -R storage/ vendor/
[root@vm blog]# ll
total 428
drwxr-xr-x  6 apache apache   4096 Dec 12 16:32 app
-rw-r--r--  1 apache apache   1686 Dec 12 16:32 artisan
drwxr-xr-x  3 apache apache   4096 Dec 12 16:32 bootstrap
-rw-r--r--  1 apache apache   1379 Dec 12 16:32 composer.json
-rw-r--r--  1 apache apache 141894 Dec 12 16:32 composer.lock
drwxr-xr-x  2 apache apache   4096 Dec 12 16:32 config
drwxr-xr-x  5 apache apache   4096 Dec 12 16:32 database
-rw-r--r--  1 apache apache   1125 Dec 12 16:32 package.json
-rw-r--r--  1 apache apache   1040 Dec 12 16:32 phpunit.xml
drwxr-xr-x  4 apache apache   4096 Dec 12 16:32 public
drwxr-xr-x  5 apache apache   4096 Dec 12 16:32 resources
drwxr-xr-x  2 apache apache   4096 Dec 12 16:32 routes
-rw-r--r--  1 apache apache    563 Dec 12 16:32 server.php
drwxrwxrwx  5 apache apache   4096 Dec 12 16:32 storage
drwxr-xr-x  4 apache apache   4096 Dec 12 16:32 tests
drwxrwxrwx 36 apache apache   4096 Dec 12 16:32 vendor
-rw-r--r--  1 apache apache    549 Dec 12 16:32 webpack.mix.js
-rw-r--r--  1 apache apache 227362 Dec 12 16:32 yarn.lock

storage目录包含了缓存、日志等相关信息,需要有写权限。 
vendor目录下的是composer依赖包。

 

权限如果有问题设置一下权限:

执行权限 chmod +x ~/.composer/vendor/laravel/installer/laravel

提示:不要忘了经常执行 composer selfupdate 以保持 Composer 一直是最新版本哦!

posted on 2018-02-08 16:44  makeinchina  阅读(368)  评论(0编辑  收藏  举报

导航