Yii2 高级模板不使用Apache配置目录,将前后台入口移到根目录

Posted jerryhe326

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yii2 高级模板不使用Apache配置目录,将前后台入口移到根目录相关的知识,希望对你有一定的参考价值。

刚刚入手Yii2高级模板不久,部署项目时,得部署2个应用,个人感觉很繁琐,就将前后台入口文件全部拿到项目根目录。但是一看,完了,出错了!找教程找不到,还是自己解决吧

为了以后好升级,不改变Yii2核心文件,只需改2个文件就可以

    将Vendor/yiisoft/yii2/web/AssetManger.php文件的69行
    public $basePath = ‘@webroot/assets‘; 改为 public $basePath = ‘@webroot/frontend/web/assets‘;
    以及73行
    public $baseUrl = ‘@web/assets‘; 改为 public $baseUrl = ‘@web/frontend/web/assets‘;
    将frontend/assets/AppAsset.php文件20行

public $css = [
    ‘css/site.css‘,
];

改为

public $css = [
    ‘frontend/web/css/site.css‘,
];

OK,刷新下前台,一切恢复原样!
后台应用是需要改
将backend/assets/AppAsset.php文件20行

public $css = [
    ‘css/site.css‘,
];

改为

public $css = [
    ‘backend/web/css/site.css‘,
];

这样就OK了。
我这样修改不知道对后面开发有没有问题,个人刚接触Yii2,不知道有什么问题,希望知道的大神指点一二,鄙人虚心接受,有什么不好之处也请大神说教说教。
第一次写教程,不好之处,大家勿喷哈!!!

 ******一下还未尝试

可以在根目录下新建 index.php文件,
文件内容:
<?php
header("Location:frontend/web/index.php");

即可,不用修改框架




以上是关于Yii2 高级模板不使用Apache配置目录,将前后台入口移到根目录的主要内容,如果未能解决你的问题,请参考以下文章

Yii2 Nginx Elastic Beanstalk 上的高级模板

Yii2前端和后端之间的链接(高级模板)

在 Yii2 高级模板中制作持久的 CSS 和 JS

yii2_composer安装和改为国内源

Yii2安装搭建和将入口文件移到根目录

Yii2 advance swiftmailer 不能发送邮件