移动一个应用webroot
默认情况下,Yii2应用使用web
文件夹存放你网站的入口脚本。但是共享的托管环境通常会对配置和目录结构有限制。你不能修改你网站的工作目录。大部分服务器只提供public_html
目录存放你网站的入口脚本。
准备
按照官方指南http://www.yiiframework.com/doc-2.0/guide-start-installation.html的描述,使用Composer包管理器创建一个新的yii2-app-basic
应用。
如何做…
下边我们来讨论如何修改一个应用的webroot。
在root中存放文件
- 上传应用文件到你的托管服务器上
- 重命名
web
目录为public_html
- 检查网站是否工作正常
将文件放在一个子文件夹中
一个托管服务器用户目录可能包含其它文件和文件夹。遵照下面的步骤,你可以将文件移动到子文件夹中:
- 创建
application
和public_html
文件夹 - 将应用文件移动到
application
文件夹中 - 将
application/web
文件夹中的内容移动到public_html
文件夹中 - 打开
public_html/index.php
文件,并修改包含的路径:
require(__DIR__ . '/../application/vendor/autoload.php');
require(__DIR__ . '/../application/vendor/yiisoft/yii2/Yii.php');
工作原理…
Yii2应用基于入口脚本的位置自动设置@web
和@webroot
alias路径。因此我们可以很容易移动或者重命名一个web
目录,并且不需要修改应用的配置。
对于yii2-app-advanced
,你可以移动backend
中web
目录中的内容到一个子文件夹中,例如admin
:
public_html
index.php
...
admin
index.php
...
backend
common
console
frontend
...
参考
欲了解更多关于在一个共享托管环境上安装Yii,参考http://www.yiiframework.com/doc-2.0/guide-tutorial-shared-hosting.html。