Yii2 高级模板不使用Apache配置目录,将前后台入口移到根目录 [ 2.0 版本 ]
刚刚入手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,不知道有什么问题,希望知道的大神指点一二,鄙人虚心接受,有什么不好之处也请大神说教说教。
第一次写教程,不好之处,大家勿喷哈!!!
离空气 江苏南京
注册时间:2014-11-03
最后登录:2天前
在线时长:90小时46分
最后登录:2天前
在线时长:90小时46分
- 粉丝8
- 金钱12060
- 威望20
- 积分13160
共 6 条评论
直接改框架,并非善法。可以通过继承和配置实现。
请问要如何实现呢?........
同问+1
我也遇到了,在本地机上,locahost指向根目录fontend/web目录,可是后台地址backend/web,却访问不到了.
谢谢!算是一个思路吧,
前台想使用
http://localhost
后台想使用
http://localhost/backend
如何搞啊??????
在apache中配置即可
@离空气: 配置Apache是不是web根目录下就只能放置一个项目了, 如果我还有其他的yii2的项目, 是不是就访问不了了
测试了不行呀
nginx上web跟目录只想frontend/web, 后台直接在frontend/web 下面做一个模块,这样如何?
可以在根目录下新建 index.php文件,
文件内容:
<?php
header("Location:frontend/web/index.php");
即可,不用修改框架