因为兴趣,一直想自己做一个项目,可以自己修改,升级,就像是呵护自己的产品一样,万事开头难,筹备了很久,进度及其缓慢,因为项目一开始是打算使用yii框架的,于是今天着手准备安装yii2,虽然遇到了一些情况,但最终还是完成了,说一下遇到的状况吧,以防后面会再次遇到,因为这个情况我不是第一个遇到的,百度了一下,有遇到和我一样情况的开发者,将它的分享贴出:
原文地址【http://www.tuicool.com/articles/iauq2qN】
这里只讲 linux下安装Yii2的方法 , windows安装yii2 的方法 请参见我的另一篇博文 http://blog.csdn.net/zqtsx/article/details/39344913
第一步 安装Composer:
语法:“curl -sS https://getcomposer.org/installer | php中bin目录里的php可执行文件路径”
我这里的php可执行文件所在路径是/usr/local/php/bin/php
所以实际安装命令如下:
curl -sS https://getcomposer.org/installer | /usr/local/php/bin/php
为方便日后使用将其移动到本地系统可执行文件目录 并重新命名为 composer(这样以后执行命令时就不用写composer.phar那么长的名字,直接写composer就可以了)
mv composer.phar /usr/local/bin/composer
第二步 安装Composer Asset Plugin:
在命令行执行如下命令注意语法中实际php文件地址和实际composer地址修改成你自己的安装地址:
(语法:php/bin/php文件所在路径 + composer文件安装路径 + global require "fxp/composer-asset-plugin:1.0.0-beta3" 注意空格和标点不要是中文的 )
/usr/local/php/bin/php /usr/local/bin/composer global require "fxp/composer-asset-plugin:1.0.0-beta3"
出现类似如下提示信息说明一切安装正常(摘取天上星linux下安装yii2):
“Changed current directory to /root/.composer
./composer.json has been created
Loading composer repositories with package information
Updating dependencies (including require-dev)
- Installing fxp/composer-asset-plugin (v1.0.0-beta3)
Downloading: 100%
Writing lock file
Generating autoload files”
第三步 安装YII2
命令行下切换到一个php可以访问的站点目录
然后执行命令(注意php可执行文件路径和 composer路径修改成你自己的安装路径):
如下命令将Yii2.0.0版本安装在名为 yii2 的目录中,具体目录名可以根据自己的需要修改:
/usr/local/php/bin/php /usr/local/bin/composer create-project yiisoft/yii2-app-basic yii2 2.0.0
需要耐心等待,安装过程中可能会出现如下信息要求你输入用户名 和密码(自己到YII官网"https://github.com/"注册一个账户,把账户密码填进去就OK了):
Installing yiisoft/yii2-app-basic (2.0.0)
- Installing yiisoft/yii2-app-basic (2.0.0)
Downloading: 100%
Created project in yii2
Loading composer repositories with package information
Installing dependencies (including require-dev)
Reading bower.json of bower-asset/jquery.inputmask (3.1.29)
Could not fetch https://api.github.com/repos/RobinHerbots/jquery.inputmask/contents/bower.json?ref=faf19625822fbd54765d26baac3154cd132769d1, enter your GitHub credentials to go over the API rate limit
The credentials will be swapped for an OAuth token stored in /root/.composer/auth.json, your password will not be stored
To revoke access to this token you can visit https://github.com/settings/applications
Username:myyiiname (这里填写你在官网注册的账户名)
输入账户密码后会出现如下认证成功的提示( 如果没有就证明你的账户密码错了,或者你刚在YII官网注册的新账户没有通过邮件激活 ):
Token successfully created
认证通过的提示信息下面紧跟着一句如下的进度提示信息,说明正在安装过程中,需要你耐心等待,后面的小数点会随着安装进度有微妙的变化,
Reading bower.json of bower-asset/typeahead.js (v0.10.0)
然后紧接着缓缓有序的出现一些列如下的进度条,还需要耐心等待(摘取天上星linux下安装yii2):
- Installing yiisoft/yii2-composer (2.0.0)
Downloading: 100%
- Installing swiftmailer/swiftmailer (v5.3.0)
Downloading: 100%
- Installing bower-asset/jquery (2.1.1)
Downloading: 100%
- Installing bower-asset/yii2-pjax (v2.0.1)
Downloading: 100%
- Installing bower-asset/punycode (v1.3.2)
Downloading: 100%
- Installing bower-asset/jquery.inputmask (3.1.41)
Downloading: 100%
- Installing cebe/markdown (1.0.1)
Downloading: 100%
- Installing ezyang/htmlpurifier (v4.6.0)
Downloading: 100%
- Installing yiisoft/yii2 (2.0.0)
Downloading: 100%
- Installing yiisoft/yii2-swiftmailer (2.0.0)
Downloading: 100%
- Installing yiisoft/yii2-codeception (2.0.0)
Downloading: 100%
- Installing bower-asset/bootstrap (v3.2.0)
Downloading: 65%
直到出现类似如下完整信息,说明YII2下载安装结束
Installing yiisoft/yii2-app-basic (2.0.0)
- Installing yiisoft/yii2-app-basic (2.0.0)
Loading from cache
Created project in yii2
Loading composer repositories with package information
Installing dependencies (including require-dev)
- Installing yiisoft/yii2-composer (2.0.0)
Loading from cache
- Installing swiftmailer/swiftmailer (v5.3.0)
Loading from cache
- Installing bower-asset/jquery (2.1.1)
Loading from cache
- Installing bower-asset/yii2-pjax (v2.0.1)
Loading from cache
- Installing bower-asset/punycode (v1.3.2)
Loading from cache
- Installing bower-asset/jquery.inputmask (3.1.41)
Loading from cache
- Installing cebe/markdown (1.0.1)
Loading from cache
- Installing ezyang/htmlpurifier (v4.6.0)
Loading from cache
- Installing yiisoft/yii2 (2.0.0)
Loading from cache
- Installing yiisoft/yii2-swiftmailer (2.0.0)
Loading from cache
- Installing yiisoft/yii2-codeception (2.0.0)
Loading from cache
- Installing bower-asset/bootstrap (v3.2.0)
Downloading: 100%
- Installing yiisoft/yii2-bootstrap (2.0.0)
Downloading: 100%
- Installing yiisoft/yii2-debug (2.0.0)
Downloading: 100%
- Installing bower-asset/typeahead.js (v0.10.5)
Downloading: 100%
- Installing phpspec/php-diff (v1.0.2)
Downloading: 100%
- Installing yiisoft/yii2-gii (2.0.0)
Downloading: 100%
- Installing fzaninotto/faker (v1.4.0)
Downloading: 100%
- Installing yiisoft/yii2-faker (2.0.0)
Downloading: 100%
Writing lock file
Generating autoload files
chmod(‘runtime‘, 0777)...done.
chmod(‘web/assets‘, 0777)...done.
chmod(‘yii‘, 0755)...done.
到这里整个YII2就安装结束了
第四步 测试yii2是否安装成功
首先修改nginx 或apache 配置信息,将yii2目录添加为虚拟站点目录
我这里是nginx配置的,直接在nginx 里添加一个yii2的站点 目录就成了
在nginx里添加类似如下站点设置即可,我们这里的yii2安装目录是 /var/www/yii2 所以 设置站点目录为/var/www/yii2
因为之前127.0.0.1 和127.0.0.2 已经有两个项目在了,所以这里就设置yii2站点本地 ip为 127.0.0.3
我的具体配置如下:
server {
listen 80;
listen 127.0.0.3;
server_name somename alias another.alias;
location / {
root /var/www/yii2/;
index index.php index.html index.htm;
}
location ~ \.php$ {
#root html;
root /var/www/yii2/;
#an quan guo lv
try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#include fastcgi_params;
include fastcgi.conf;
}
location ~* \.(?:gif|ico|jpe?g|png|swf|bmp|mp3)$ {
valid_referers none blocked 127.0.0.3 localhost baidu.com *.baidu.com google.com.hk *.google.com.hk *.google.com;
if ( $invalid_referer ) {
return 404;
}
#
#expires 30d;
log_not_found off;
## No need to bleed constant updates. Send the all shebang in one
#
# fell swoop.
#
tcp_nodelay off;
#
# Set the OS file cache.
#
open_file_cache max=1000 inactive=120s;
open_file_cache_valid 125s;
open_file_cache_min_uses 2;
open_file_cache_errors off;
root /var/www/yii2/;
#
}
location ~* \.(js|css|mid)$ {
expires 1d;
root /var/www/yii2/;
}
}
然后在浏览器中输入http://127.0.0.3/web/ 即可看到 yii2站点的主页信息
至此,说明yii2.0.0版本安装、测试一切OK,可以开始您的开发之旅了……
第五步 yii2出现 Calling unknown method: yii\web\UrlManager::addRules() 错误的解决方案:
安装后 访问yii时如果遇到类似Calling unknown method: yii\web\UrlManager::addRules() 的错误 ,请参见摘取天上星的另一篇博文:
http://blog.csdn.net/zqtsx/article/details/39345015