Yii2 framework学习笔记(一) -- 环境搭建

黄舟
黄舟 原创
2016-12-30 09:32:32 1107浏览

最近学习yii2 framework,学而不思则罔,做个小的宝宝图片展示系统练练手。

系统功能如下:

前台部分部分展示上传的宝宝图片,并可以接受评论/点赞。

后台维护上传的照片,可以选择上传的图片是否公开,是否接受评论。

可以管理自己照片下的评论。

有一个任务系统,任务为每天给宝宝拍几张照片,写多少字的描述,完成得积分。

一个积分系统。

前台功能相对简单,使用yii2自带的jquery/bootstrap即可完成。

后台计划使用adminLTE。

环境使用的是现成的wamp server(http://www.wampserver.com/en/),搭建yii框架用的是composer(https://getcomposer.org/)。

用的是yii2的advance template,按照官方文档进行框架搭建(https://github.com/yiisoft/yii2-app-advanced/blob/master/docs/guide/start-installation.md)

1.在cmd中将目录切换到wamp/apps下,运行composer。

[code]composer global require "fxp/composer-asset-plugin:~1.1.1"
composer create-project --prefer-dist yiisoft/yii2-app-advanced yii2

注意不要在wamp/www目录下运行该命令,因为放在www目录下会把整个yii文件暴露出去,而实际上需要暴露给用户的只有frontend/web和backend/web两个文件夹

2.在cmd中将当前目录切换到wamp/apps/yii2下,运行初始化命令init.bat。

[code]init
选择0(开发环境)

655.png


3.打开yii2/common/conf/main-local.php。根据里面的默认配置,在本地数据库建一个名为yii2advanced的库4.在cmd(路径保持在wamp/apps/yii2下)中运行yii migrate

运行完会帮我们把基础表建好

5.用composer搭建的yii环境有个初始路径指向错误的问题,需要做修改,否则无法运行。该文件为\yii2\vendor\yiisoft\yii2\base\Application.php

public function setVendorPath($path)
    {
        $this->_vendorPath = Yii::getAlias($path);
        Yii::setAlias('@vendor', $this->_vendorPath);
        //Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower');
        Yii::setAlias('@bower', $this->_vendorPath . DIRECTORY_SEPARATOR . 'bower' . DIRECTORY_SEPARATOR . 'bower-asset');
        Yii::setAlias('@npm', $this->_vendorPath . DIRECTORY_SEPARATOR . 'npm');
    }

修改点是把@bower的路径指向它的下一层目录bower-asset中。

6.在wamp/alias下新建一个yii2.conf文件,写入如下内容保存后,重启apache

Alias /babytask/admin "e:/wamp/apps/yii2/backend/web/"
Alias /babytask "e:/wamp/apps/yii2/frontend/web/"

<Directory "e:/wamp/apps/yii2/frontend/web/">
   Options Indexes FollowSymLinks MultiViews
   AllowOverride all
   Require all granted
</Directory>

<Directory "e:/wamp/apps/yii2/backend/web/">
   Options Indexes FollowSymLinks MultiViews
   AllowOverride all
   Require all granted
</Directory>

注意点:

因为wamp里的httpd.conf里配置了alias里的.conf文件都会被自动编入配置,所以只要写好这个文件,不需要做其他关联就能生效。
yii2.conf里前两行的Alias不可颠倒。如果写反了,当用户输入/babytask/admin时,apache会先寻找frontend/web/admin/的东西而不是backend/web/从而导致404。

7.打开浏览器,输入localhost/babytask和localhost/babytask/admin,检查是否能正常访问

以上就是Yii2 framework学习笔记(一) -- 环境搭建的内容,更多相关内容请关注PHP中文网(m.sbmmt.com)!


声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。