请求超出了10个内部重定向的限制 - .htaccess

时间:2016-02-17 12:44:22

标签: php apache .htaccess

在我的开发服务器上克隆git repo后,我在Apache日志中收到以下错误消息;

  

由于可能,请求超出了10个内部重定向的限制   配置错误。使用'LimitInternalRecursion'来增加   必要时限制。使用“LogLevel debug”获取回溯。

下面复制了2x .htaccess;

Webroot .htaccess(位于projectRoot / webroot /中)

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /apply/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>

应用程序.htaccess(位于projectRoot /中)

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /apply/
    RewriteRule    ^$    webroot/    [L]
    RewriteRule    (.*) webroot/$1    [L]
</IfModule>

其他答案说要将RewriteBase更改为/,但这不是我的选择,因为我需要它/apply/。 其他一些答案指出RewriteRule是问题,但删除这些并不能解决问题。

1 个答案:

答案 0 :(得分:2)

您需要将要重写的目的地排除在外:

<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /apply/
    RewriteRule ^$ webroot/ [L]
    RewriteCond %{REQUEST_URI} !^/webroot/
    RewriteRule    (.*) webroot/$1    [L]
</IfModule>

否则您将收到重写循环错误,因为/ webroot /也匹配模式(。*)