htaccess与cakeph帐户500错误的cakephp

Cam*_*003 4 php .htaccess cakephp

我在justhost.com帐户上遇到.htaccess文件的问题.我收到了持续的内部500错误,我在网上尝试了许多不同的解决方案.这是我的htaccess文件的样子:

ROOT HTACCESS

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

app/HTACCESS

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

app/webroot/HTACCESS

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

问题是我在错误日志中得到了这个:

Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
Run Code Online (Sandbox Code Playgroud)

我已经尝试将RewriteBase设置为/但它没有解决问题.

Ani*_*she 13

您必须在三个.htaccess文件中使用Rewrite base.根目录中包含目录app,lib,plugin和vendor的那个应该是这样的

<IfModule mod_rewrite.c>
   RewriteEngine on
   RewriteBase /
   RewriteRule    ^$ app/webroot/    [L]
   RewriteRule    (.*) app/webroot/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

app/htaccess看起来应该是这样的

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /app/
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

最后app/webroot/htaccess应该是这样的

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /app/webroot
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)

如果您的lib不在根文件夹中,您还必须更改core.php中的值以将其映射到相关地址.为此,您可以查看烹饪书中的高级安装.