我应该把yii框架和受保护的文件放在哪里?

我应该把yii框架和受保护的文件放在哪里?,yii,Yii,我在玩yii,但是我不知道把框架文件放在哪里。在我的共享主机中,我有/home/username文件夹,其中当然包含公共html。Yii应用程序文件应该进入公共html,但是框架呢?它也应该放在public_html中,还是应该放在/home/username中?这样行吗?受保护的文件夹呢?我应该把它和所有其他应用程序文件一起放在public_html中,还是应该把它移到其他地方 常用的方法是什么?我通常将它们放在/home/username中,这样可以确保没有人可以直接访问框架。然后,一旦放在

我在玩yii,但是我不知道把框架文件放在哪里。在我的共享主机中,我有/home/username文件夹,其中当然包含公共html。Yii应用程序文件应该进入公共html,但是框架呢?它也应该放在public_html中,还是应该放在/home/username中?这样行吗?受保护的文件夹呢?我应该把它和所有其他应用程序文件一起放在public_html中,还是应该把它移到其他地方


常用的方法是什么?

我通常将它们放在/home/username中,这样可以确保没有人可以直接访问框架。然后,一旦放在那里,在public_html中编辑index.php文件以指向framework目录

$yii=dirname(__FILE__).'/../../yii-1.1.12.b600af/framework/yii.php';
您也可以将框架放在public_html文件夹中,然后只需在框架文件夹中添加一个.htaccess文件,其中包含以下
deny from all
假设在apache中启用了override all,这也将确保没有人可以从浏览器访问该目录


因此,如果可能,您不需要直接从浏览器访问的文件和文件夹总是放在公共html文件夹之外,以获得更好的安全性假设禁用了apache中的override all(全部覆盖)

我通常将它们放在/home/username中,这确保没有人可以直接访问框架。然后,一旦放在那里,在public_html中编辑index.php文件以指向framework目录

$yii=dirname(__FILE__).'/../../yii-1.1.12.b600af/framework/yii.php';
您也可以将框架放在public_html文件夹中,然后只需在框架文件夹中添加一个.htaccess文件,其中包含以下
deny from all
假设在apache中启用了override all,这也将确保没有人可以从浏览器访问该目录


因此,只要有可能,您不需要直接从浏览器访问的文件和文件夹总是将它们放在公共html文件夹之外,以获得更好的安全性,假设禁用了apache中的“全部覆盖”

大多数Web服务器的酷之处在于,将实际代码的级别提高到高于公法。我使用的通常是这样的:

   pubic_html/        <- your /home/user/public_html
     mysite.com/
       public/        <- The web site root (for apache config)
       protected/     <- Your actual code
       dependencies/  <- Framework and other libraries you use
       db/            <- All database delta scripts

public_html/大多数Web服务器的酷之处在于,将实际代码的级别提高到高于公共代码的级别并不成问题。我使用的通常是这样的:

   pubic_html/        <- your /home/user/public_html
     mysite.com/
       public/        <- The web site root (for apache config)
       protected/     <- Your actual code
       dependencies/  <- Framework and other libraries you use
       db/            <- All database delta scripts

public\u html/这是否意味着“protected”也应该移到public\u html之外?托管提供商为您添加的public\u html和Web服务器将使用的实际文档根目录可能会有一些混淆。public_html通常只是一种惯例,您可以将所有站点放在子文件夹(www.mysite.com)中。然后为该站点创建VHost。将该文件夹指定为web根目录。对于Yii,策略是在其中包含另一个“公共”文件夹,该文件夹将是实际的web根目录。如果您的主机只允许您访问一个站点,我肯定只会将Yii的公用文件夹内容放在那里,其余的放在其他地方。这是否意味着“受保护”是否也应该移到public_html之外?托管提供商为您添加的public_html和Web服务器将使用的实际文档根目录可能会有点混淆。public_html通常只是一种惯例,您可以将所有站点放在子文件夹(www.mysite.com)中。然后为该站点创建VHost。将该文件夹指定为web根目录。对于Yii,策略是在其中包含另一个“公共”文件夹,该文件夹将是实际的web根目录。如果您的主机只允许您访问一个站点,我肯定只会将Yii的公用文件夹内容放在那里,其余的放在其他地方。嗯,我不完全确定我是否了解所有细节。。然后,我的/home/user/public_html中会有什么内容(您提到的第二个选项,因为这就是我所拥有的,为单个站点托管)。它是否只包含yii的index.php链接到受保护的html(这将有我的代码在code/?中。你的index.php,任何你想要公开的javascript和css文件,通常是你的资产文件夹,以便Yii可以发布小部件所需的文件等。Blizz,谢谢你的帖子。我有一个Yii应用程序,开发人员在同一级别转储了所有文件夹。我真的想我的应用程序文件位于名为/app的/protected文件夹中,这样我就可以grep、同步文件等,而无需处理1000多个多余的文件。但当我这样做时,应用程序会以“无法解决请求”的方式中断错误。是否有其他地方可以配置模型、视图和控制器的位置?嗯,我不完全确定我是否遵循了所有的细节。然后在my/home/user/public_html中会驻留什么内容(您提到的第二个选项,因为这是我拥有的,为单个站点托管)。它是否只包含yii的index.php链接到受保护的html(这将有我的代码在code/?中。你的index.php,任何你想要公开的javascript和css文件,通常是你的资产文件夹,以便Yii可以发布小部件所需的文件等。Blizz,谢谢你的帖子。我有一个Yii应用程序,开发人员在同一级别转储了所有文件夹。我真的想我的应用程序文件位于名为/app的/protected文件夹中,这样我就可以grep、同步文件等,而无需处理1000个多余的文件。但当我这样做时,应用程序会出现“无法解决请求”错误。是否有其他位置可配置模型、视图和控制器的位置?