1. 前提条件,php版本得> 5.4
D:\phpStudy>php -v PHP 5.5.17 (cli) (built: Sep 16 2014 16:17:50) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies D:\phpStudy>
2. 安装方式,一种是直接下载压缩包,推荐采用composer方式安装,未来的趋势。安装直接确保php已经支持openssl (php.ini)查找Openssl
2.1 下载安装composer , 我的环境是windows的 。
http://getcomposer.org/doc/00-intro.md#installation-nix
附:linux安装方式
[root@mty01 2016-06-03]# curl -sS https://getcomposer.org/installer | php Downloading 1.1.2... Composer successfully installed to: /home/haozi/2016-06-03/composer.phar Use it: php composer.phar Some settings on your machine may cause stability issues with Composer. If you encounter issues, try to change the following: Your PHP (5.3.3) is quite old, upgrading to PHP 5.3.4 or higher is recommended. Composer works with 5.3.2+ for most people, but there might be edge case issues. The OpenSSL library (1.0.0-fips) used by PHP does not support TLSv1.2 or TLSv1.1. If possible you should upgrade OpenSSL to version 1.0.1 or above. [root@mty01 2016-06-03]# ls composer.phar [root@mty01 2016-06-03]# du -sh composer.phar 1.6M composer.phar
3. 完成composer安装之后,需要安装composer的插件
D:\phpStudy\WWW\yii2>php composer.phar global require "fxp/composer-asset-plugin:~1.1.1"
Changed current directory to C:/Users/liuhao14/AppData/Roaming/Composer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing fxp/composer-asset-plugin (v1.1.4)
Downloading: 100%
Writing lock file
Generating autoload files
D:\phpStudy\WWW\yii2>
4. 开始安装之前,需要配置一个 github的token,这里不做叙述。意思是需要申请一个github的账号,然后生成一个token。
参照如下路径,设置(注意下面xxxx明显是打码了,所以你直接使用用不了)
C:\Users\liuhao14\AppData\Roaming\Composer>dir /b
.htaccess
auth.json
composer.json
composer.lock
composer.phar
vendor
C:\Users\liuhao14\AppData\Roaming\Composer>type auth.json
{
"github-oauth": {
"github.com": "xxxxxxxxxxx6fc824ea5a76ebc5fcdxxxxxxxxxx"
}
}
C:\Users\liuhao14\AppData\Roaming\Composer>
5.重头戏,开始安装。由于国内环境的问题,安装时间比较长,半个小时也常见,只要程序没死,不要切断.....
D:\phpStudy\WWW\yii2>php composer.phar create-project yiisoft/yii2-app-advanced advanced 2.0.8
Installing yiisoft/yii2-app-advanced (2.0.8)
- Installing yiisoft/yii2-app-advanced (2.0.8)
Loading from cache
Created project in advanced
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing yiisoft/yii2-composer (2.0.4)
Downloading: 100%
- Installing swiftmailer/swiftmailer (v5.4.2)
Downloading: 100%
- Installing bower-asset/jquery (2.2.4)
Downloading: 100%
- Installing bower-asset/yii2-pjax (v2.0.6)
Downloading: 100%
- Installing bower-asset/punycode (v1.3.2)
Downloading: 100%
- Installing bower-asset/jquery.inputmask (3.2.7)
Downloading: 100%
- Installing cebe/markdown (1.1.0)
Downloading: 100%
- Installing ezyang/htmlpurifier (v4.7.0)
Downloading: 100%
- Installing yiisoft/yii2 (2.0.8)
Downloading: 100%
- Installing yiisoft/yii2-swiftmailer (2.0.5)
Downloading: 100%
- Installing yiisoft/yii2-codeception (2.0.5)
Downloading: 100%
- Installing bower-asset/bootstrap (v3.3.5)
Downloading: 100%
- Installing yiisoft/yii2-bootstrap (2.0.6)
Downloading: 100%
- Installing yiisoft/yii2-debug (2.0.6)
Downloading: 100%
- Installing bower-asset/typeahead.js (v0.11.1)
Downloading: 100%
- Installing phpspec/php-diff (v1.1.0)
Downloading: 100%
- Installing yiisoft/yii2-gii (2.0.5)
Downloading: 100%
- Installing fzaninotto/faker (v1.6.0)
Downloading: 100%
- Installing yiisoft/yii2-faker (2.0.3)
Downloading: 100%
Writing lock file
Generating autoload files
D:\phpStudy\WWW\yii2>
5.1 安装之后需要进行相关配置,初始化
D:\phpStudy\WWW\yii2\advanced>init
Yii Application Initialization Tool v1.0
Which environment do you want the application to be initialized in?
[0] Development
[1] Production
Your choice [0-1, or "q" to quit] 0
Initialize the application under 'Development' environment? [yes|no] yes
Start initialization ...
generate backend/config/main-local.php
generate backend/config/params-local.php
generate backend/web/index-test.php
generate backend/web/index.php
generate common/config/main-local.php
generate common/config/params-local.php
generate console/config/main-local.php
generate console/config/params-local.php
generate frontend/config/main-local.php
generate frontend/config/params-local.php
generate frontend/web/index-test.php
generate frontend/web/index.php
generate tests/codeception/config/config-local.php
generate yii
generate cookie validation key in backend/config/main-local.php
generate cookie validation key in frontend/config/main-local.php
chmod 0777 backend/runtime
chmod 0777 backend/web/assets
chmod 0777 frontend/runtime
chmod 0777 frontend/web/assets
chmod 0755 yii
chmod 0755 tests/codeception/bin/yii
... initialization completed.
D:\phpStudy\WWW\yii2\advanced>
5.2 完成数据库的相关配置,我选择的是mysql。自己创建相关数据库,然后配置。打开yii2目录下的common\config\main-local.php文件,输入用户名,密码,数据库名字(没有数据库名,必须先创建数据库名字)
5.3 接下来使用yii migrate创建自带的数据库
D:\phpStudy\WWW\yii2\advanced>yii migrate
Yii Migration Tool (based on Yii v2.0.8)
Total 1 new migration to be applied:
m130524_201442_init
Apply the above migration? (yes|no) [no]:yes
*** applying m130524_201442_init
> create table {{%user}} ... done (time: 0.308s)
*** applied m130524_201442_init (time: 0.496s)
1 migration was applied.
Migrated up successfully.
D:\phpStudy\WWW\yii2\advanced>
5.3.1 登陆数据库,验证一下。应该有2张表(migration / user)【幻风寒影 2016-07-11 14:29:50】
mysql> use yii2advanced Database changed mysql> show tables; +------------------------+ | Tables_in_yii2advanced | +------------------------+ | migration | | user | +------------------------+ 2 rows in set (0.00 sec) mysql>
mysql> desc user;
+----------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| username | varchar(255) | NO | UNI | NULL | |
| auth_key | varchar(32) | NO | | NULL | |
| password_hash | varchar(255) | NO | | NULL | |
| password_reset_token | varchar(255) | YES | UNI | NULL | |
| email | varchar(255) | NO | UNI | NULL | |
| status | smallint(6) | NO | | 10 | |
| created_at | int(11) | NO | | NULL | |
| updated_at | int(11) | NO | | NULL | |
+----------------------+--------------+------+-----+---------+----------------+
9 rows in set (0.00 sec)
mysql> desc migration
-> ;
+------------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+-------+
| version | varchar(180) | NO | PRI | NULL | |
| apply_time | int(11) | YES | | NULL | |
+------------+--------------+------+-----+---------+-------+
2 rows in set (0.00 sec)
mysql>
6. 现在可以开始访问了。
http://localhost/yii2/advanced/frontend/web/

7. 参照如上表格,默认自带了user管理(sign in / login /logout)不过默认没有用户,可以先注册,顺便验证一下。
来源:https://www.cnblogs.com/topshooter/p/yii2_advanced_install.html