GoDaddy CakePHP子文件夹.htaccess规则

时间:2014-12-27 04:24:31

标签: php apache .htaccess cakephp mod-rewrite

我需要在我的网站的子目录中设置cakephp - cms。我尝试了各种.htaccess规则,但收到错误500404错误。我在使用cPanel的GoDaddy Deluxe Linux Hosting。

以下是我的尝试。

在CMS文件夹中:

<IfModule mod_rewrite.c>
#Options +FollowSymlinks
RewriteEngine on
RewriteBase /cms/
#RewriteBase /mysite.com/cms/
RewriteRule    ^$ app/webroot/    [L]
RewriteRule    (.*) app/webroot/$1 [L]
</IfModule> 

在CMS中&gt; App文件夹:

<IfModule mod_rewrite.c>
#Options +FollowSymlinks
RewriteEngine on
RewriteBase /cms/
#RewriteBase /mysite.com/cms/
RewriteRule    ^$    webroot/    [L]
RewriteRule    (.*) webroot/$1    [L]
</IfModule>

在CMS中&gt;应用&gt; Webroot的:

<IfModule mod_rewrite.c>
#Options +FollowSymlinks
RewriteEngine On
RewriteBase /cms/
#RewriteBase /mysite.com/cms/
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

请帮助我了解.htaccess规则。

1 个答案:

答案 0 :(得分:0)

您需要使用正确的RewriteBase

尝试:

在CMS中&gt;应用程序文件夹:

<IfModule mod_rewrite.c>
#Options +FollowSymlinks
RewriteEngine on
RewriteBase /cms/app/

RewriteRule    ^$   webroot/    [L]
RewriteRule    (.*) webroot/$1    [L]
</IfModule>

在CMS中&gt;应用&gt; Webroot的:

<IfModule mod_rewrite.c>
#Options +FollowSymlinks
RewriteEngine On
RewriteBase /cms/app/webroot/

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

您的/cms/.htaccess看起来不错。