欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

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

程序员文章站 2022-03-28 19:39:22
...
最近学习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(开发环境)

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


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中文网(www.php.cn)!