【问题标题】:The folder "www" doesn't seem to work properly on hostgator文件夹“www”似乎无法在 hostgator 上正常工作
【发布时间】:2016-05-24 14:10:21
【问题描述】:

我已经使用 Yii 框架开发了一个网站,现在我需要将它转移到 hostgator 廉价托管,用于单个网站。看起来它希望网站必须放在根文件夹中,但我的网站有一个 www 文件夹,其中包含 index.php 和资源文件,如 js、css、images 等。此文件夹还包含一个文件 htaccess,其内容如下:

RewriteEngine on

# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

# otherwise forward it to index.php
RewriteRule . index.php

但我想我必须在根文件夹中添加另一个 htaccess,以便所有请求都会重定向到 www 文件夹。 (我做到了并尝试了重写规则的不同组合,但它们不能正常工作)。我猜我应该从 www 文件夹中删除 htaccess 并在根文件夹中只保留一个。 抱歉各位,即使在阅读文档后,我也总是遇到 htaccess 问题。

提前致谢。

【问题讨论】:

  • 不应该将www 目录设置为文档根目录吗?我确信 HostGator 允许您将目录和文件放置在文档根目录上方(通常为public_html)。
  • Cpanel 向我显示了一些路径:Web 根目录 - /home/mysitename 工作目录 - /home/mysitename/public_html 但我无法通过 ftp 访问文件夹 /home/mysitename。我只能访问/home/mysitename/public_html 所以我想我只有一个选择:添加重定向到文件夹/home/mysitename/public_html/www 并将Yii 文件存储在/home/mysitename/public_html 这就是为什么我需要修复htaccess 文件之间的冲突。我也不能使用插件域,因为我使用了一个托管包“Hatchling”,它不允许使用它们。
  • 您可以简单地将.htaccess 文件移动到public_html 并将规则更改为RewriteRule . /www/index.php [L]。也就是说,任何不允许您访问站点主目录的主机都是愚蠢的。我在我的国家/地区有免费托管允许它,所以我不知道 Hostgator 在这方面的问题是什么。
  • 不幸的是它不起作用。服务器改为显示文件列表。我找到了这个htaccess。它适用于主页,但对于 http://my_domain/somepage 之类的页面,它会显示 404
  • 然后也许尝试将RewriteRule ^(.*)$ /www/$1 [L] 放入/.htaccess,然后将RewriteRule ^ index.php [L] 放入/www/.htaccess。记住在两个文件中都有RewriteEngine On

标签: apache .htaccess mod-rewrite hosting


【解决方案1】:

我认为您可以根据自己的喜好将您的域配置为在 www 中设置文档根目录的插件域。

当然,我假设您在 Hostgator 上有 cPanel。

【讨论】:

    猜你喜欢
    • 2017-09-04
    • 2012-05-06
    • 2013-02-17
    • 2017-10-09
    • 2017-08-03
    • 2014-05-02
    • 2011-09-11
    • 2016-02-11
    • 1970-01-01
    相关资源
    最近更新 更多