View on GitHub

yii2-cookbook-chinese

Yii Application Development Cookbook(Third Edition)中文翻译

移动一个应用webroot

默认情况下,Yii2应用使用web文件夹存放你网站的入口脚本。但是共享的托管环境通常会对配置和目录结构有限制。你不能修改你网站的工作目录。大部分服务器只提供public_html目录存放你网站的入口脚本。

准备

按照官方指南http://www.yiiframework.com/doc-2.0/guide-start-installation.html的描述,使用Composer包管理器创建一个新的yii2-app-basic应用。

如何做…

下边我们来讨论如何修改一个应用的webroot。

在root中存放文件

  1. 上传应用文件到你的托管服务器上
  2. 重命名web目录为public_html
  3. 检查网站是否工作正常

将文件放在一个子文件夹中

一个托管服务器用户目录可能包含其它文件和文件夹。遵照下面的步骤,你可以将文件移动到子文件夹中:

  1. 创建applicationpublic_html文件夹
  2. 将应用文件移动到application文件夹中
  3. application/web文件夹中的内容移动到public_html文件夹中
  4. 打开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,你可以移动backendweb目录中的内容到一个子文件夹中,例如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