网上关于使用composer的安装教程挺多的,但是作为新手的我,觉得好凌乱,不断尝试后,终于安装好了。最后总结出,用开启composer的镜像服务来安装yii是最好的啦,当然,归档文件的做法有利有弊就不说啦。下面整理一套亲测有效的流程分享出来,也当作备忘录吧。

一.Composer的安装以及开启镜像服务

安装前的准备工作:

1)首先安装前请务必确保已经正确安装了 PHP并且版本>=5.4。打开命令行窗口并执行 php -v 查看是否正确输出版本号。 注意:配置PATH环境变量:php.exe 所在位置

2)确保php.ini里面的配置extension=php_openssl.dll开启

下面就正式开始咯:

1.打开cmd命令行,切换到php.exe所在的目录,执行以下命令:

php -r "readfile('https://getcomposer.org/installer');" > composer-setup.php

php composer-setup.php

php -r "unlink('composer-setup.php');"

说明:执行第一条命令下载下来的 composer-setup.php 脚本将简单的检测 php.ini 中的参数设置,如果某些参数未正确设置则会给出警告;然后会自动下载最新版本的 composer.phar 文件到当前目录。

上述 3 条命令的作用依次是:

1)下载安装脚本(composer-setup.php)到当前目录。

2)执行安装过程。

3)删除安装脚本-- composer-setup.php

2.全局安装

找到并进入 PHP 的安装目录(和你在命令行中执行的 php 指令应该是同一套 PHP)。

将 composer.phar 复制到 PHP 的安装目录下面,也就是和 php.exe 在同一级目录。

在 PHP 安装目录下新建一个 composer.bat 文件,并将下列代码保存到此文件中。

@php "%~dp0composer.phar" %*

最后重新打开一个命令行窗口试一试执行 composer --version 看看是否正确输出版本号,如果有,代表安装成功,否则根据具体报错情况进行处理。

3.配置使用国内镜像:全局配置(推荐方式)

打开命令行窗口(windows用户)或控制台(Linux、Mac 用户)并执行如下命令:

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

镜像说明(摘自http://pkg.phpcomposer.com/):

一般情况下,安装包的数据(主要是 zip 文件)一般是从 github.com 上下载的,安装包的元数据是从 packagist.org 上下载的。

然而,由于众所周知的原因,国外的网站连接速度很慢,并且随时可能被“墙”甚至“不存在”。

“Packagist 中国全量镜像”所做的就是缓存所有安装包和元数据到国内的机房并通过国内的 CDN 进行加速,这样就不必再去向国外的网站发起请求,从而达到加速 composer install 以及 composer update 的过程,并且更加快速、稳定。因此,即使 packagist.org、github.com发生故障(主要是连接速度太慢和被墙),你仍然可以下载、更新安装包。

二.YII的安装

Yii的安装相对就比较简单

首先:确保你的composer是最新的

执行命令:composer self-update

1.打开cmd命令行,cd进入你的安装目录

注:给此目录配上PATH环境变量

2.composer.phar文件

将php.exe所在目录下,刚才生成的composer.phar复制到安装目录下面。有了这个文件就可以执行php composer.phar命令了。

说明:其实也可以不用复制,运行以下命令:php -r "readfile('https://getcomposer.org/installer');" | php,现生成composer.phar文件。看个人喜好咯O(∩_∩)O~

3.准备所有插件!!非常重要,少了这一步之后下载的源码中就会少一个vendor扩展文件目录

安装最新的Composer Asset Plugin

执行命令:composer global require "fxp/composer-asset-plugin:^1.3.1"

4.安装我们的yii2的应用:

安装最新的advanced版本:composer create-project yiisoft/yii2-app-advanced ../yii2test 就会在上一层目录下生成yii2test2应用

此处若是安装basic版本的,把advanced改为basic就可以了

注意:安装过程中会要求输入GitHub 的token。要获得这个很简单,登录你的github账号

https://github.com/settings/tokens,重新生成一个即可。坑爹的是这个token粘贴到命令行是隐藏的,看不到,不过也不必纠结。粘贴后按下回车就好了。

5.耐心等待几分钟,如果出现下面界面代表安装完成

ok,这样,yii2的安装就完成了

注意:advanced版本安装完之后还需要执行初始化命令,切换到其安装目录即cd c:\wamp\www\yii2test2 执行 init,接下来根据命令行提示 填 0 填 yes 就可以了。安装Basic不需要执行此操作。

进入测试目录:
localhost/yii2/yii2test/frontend/web/index.php    advanced版本

localhost/yii2/yii2test/web/index.php  basic版本

就可以看到成功的界面啦!

Windows下开启composer镜像服务来安装yii的更多相关文章

  1. Windows 下开启FTP服务并创建FTP用户

    Windows 下开启FTP服务,并创建用户 此教程教你怎么开启 Windows 的 FTP 服务,并创建用于登入 FTP 的用户.教程用到的操作系统是 Windows 7. 一.创建用于登入 FTP ...

  2. Windows下用Composer引入官方GitHub扩展包

    Windows下用Composer引入官方GitHub扩展包 1. 当你打开威武RC4版本的链接的时候,往下拉你可以看到这个,然后你要做的就是想到,百度Composer,看看是个什么鬼,别想太多,跟着 ...

  3. 转:mysql日志(Windows下开启Mysql慢查询、通用日志)

    一.Windows下开启Mysql慢查询详解 //show variables like '%quer%';查询是否开启了慢查询!! 第一步:修改my.ini(mysql配置文件)  在my.ini中 ...

  4. Android ROM开发(一)——Windows下Cygwin和Android_Kitchen厨房的安装

    Android ROM开发(一)--Windows下Cygwin和Android_Kitchen厨房的安装 很久没有碰到ROM开发了,在很久很久以前也是从ROM起步的,无奈还是一脚踏上了Android ...

  5. 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装爬虫框架Scrapy(离线方式和在线方式)(图文详解)

    不多说,直接上干货! 参考博客 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装OpenCV(离线方式和在线方式)(图文详解) 第一步:首先,提示升级下pip 第二步 ...

  6. 全网最全的Windows下Python2 / Python3里正确下载安装用来向微信好友发送消息的itchat库(图文详解)

    不多说,直接上干货! 建议,你用Anaconda2或Anaconda3. 见 全网最全的Windows下Anaconda2 / Anaconda3里正确下载安装用来向微信好友发送消息的itchat库( ...

  7. Windows下IIS+PHP 5.2的安装与配置

    Windows下IIS+PHP 5.2的安装与配置   Windows下PHP的安装虽然简单,但如果不注意方法,仍然会让你头疼.此外,PHP 5.2版本与之前4.x版本也有一些不同,所以有必要记录一下 ...

  8. Windows下用Composer安装Laravel步骤(集成php环境用phpStudy2016版本)

    描述:到官方网站了解并根据自己所需要的版本号安装,所需要的php版本是多少. 中文网站:http://www.golaravel.com/ 官方网站:https://laravel.com/ 其实各自 ...

  9. Windows下通过Composer安装Yii2

    安装好大于5.4或更高版本的PHP环境并开启openssl扩展.如果是Apache服务器,加载Apache的mod_ssl模块. 下载Composer并安装. 开始->运行[或者WIN+R]-& ...

随机推荐

  1. 【模板】2-SAT

    题目大意:给定 N 个点的 M 条约束,约束形式为:\(a_i \lor a_j = 1\). 题解:拆点什么的就不说了,在求出一组解的时候,考虑到 Tarjan 找环的过程中,scc 染色是按照拓扑 ...

  2. luogu2643 聪聪可可

    题目链接 题意 其实转化之后的题意就是求出树上有多少条路径长度是3的倍数.求答案的时候只要将这个数字除以总路径数量就行了. 思路 考虑点分治.对于当前子树,分别求出出树中每个点到根的路径长度对\(3\ ...

  3. Nginx.conf配置文件参数说明与优化

    参考连接:nginx 核心配置优化详解 先说下优化 1.nginx运行工作进程个数 worker_processes  1; Nginx进程,一般设置为和cpu核数一样(nginx启动后有多少个wor ...

  4. python 装饰器的应用

    import time def test1(): print "hello\n" print test1.__name__ def test2(): print "hel ...

  5. 数据库连接池 C3p0

    数据库连接池 C3po 1 定义 本质上是个容器(集合) 存放数据库的连接容器(connection 对象) ,当系统初始化以后 容器就会创建 容器中就会申请一些连接对象 ,当用户来访问数据库的时候 ...

  6. Python递归_打印节点信息

    Python递归_打印节点信息 递归特性:1.必须由一个明确的结束条件2.每次进入更深一层递归时,问题规模相比上一次递归都应该有所减少3.递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用时 ...

  7. Feature Selection

    两方面(发散,相关)~三方法(FWE) F:方皮卡互 W:RFE E:惩罚树 一.简介 我们的数据处理后,喂给算法之前,考虑到特征的实际情况,通常会从两个方面考虑来选择特征: 1)特征是否发散:如果一 ...

  8. Oracle_异常

    问题1 描述:plsql客户端列值中的中文都成了问号 分析:客户端和服务端编码不一致所致 解决:1.查询服务端数据库编码 SQL> select userenv('language') from ...

  9. C++ 对象实例化(转)

    C++ 对象实例化的一些概念: C++ 如果直接定义类,如classA  a; a存在栈上(也意味着复制了对象a在栈中):如果classA  a = new classA就存在堆中. 一.new创建类 ...

  10. PHP7 网络编程(一)多进程初探

    准备 我们都知道PHP是单进程执行的,PHP处理多并发主要是依赖服务器或PHP-FPM的多进程及它们进程的复用,但PHP实现多进程也意义重大,尤其是在后台Cli模式下处理大量数据或运行后台DEMON守 ...