2013-04-06 40 views
27

Tôi nhận được lỗi sau đây trong ứng dụng CakePHP của tôi:Yêu cầu vượt quá giới hạn của 10 chuyển hướng nội có thể xảy ra do lỗi cấu hình

Yêu cầu vượt quá giới hạn của 10 chuyển hướng nội do lỗi cấu hình có thể xảy ra. Sử dụng 'LimitInternalRecursion' để tăng giới hạn nếu cần. . Sử dụng 'LogLevel debug' để có được một vết lùi referer: http://projectname.dev/

.htaccess của tôi trong thư mục gốc, trông như thế này:

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

và trong thư mục ứng dụng:

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

và trong thư mục webroot:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase /projectname 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 
</IfModule> 

Tôi đã làm theo hướng dẫn sau:

http://book.cakephp.org/2.0/en/getting-started.html

Kính trọng, Stephen

Trả lời

48

tôi chỉ tìm thấy một giải pháp cho các vấn đề ở đây:

http://willcodeforcoffee.com/2007/01/31/cakephp-error-500-too-many-redirects/

Các tập tin .htaccess trong webroot nên hình như:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase/
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 
</IfModule> 

thay vì này:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteBase /projectname 
    RewriteCond %{REQUEST_FILENAME} !-d 
    RewriteCond %{REQUEST_FILENAME} !-f 
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L] 
</IfModule> 
+0

cho bánh 2.4.1, .htaccess là một trong thư mục chứa ứng dụng, lib, plugin, nhà cung cấp; không phải ứng dụng/webroot. cũng là một thay đổi quan trọng là thêm 'RewriteBase /' ... các phần khác của .htaccess có thể không khớp và điều đó là tốt. –

+0

Giải pháp tuyệt vời yaar ... Tôi xảy ra trong codeigniter của tôi, centos 6 môi trường, cảm ơn. – user2518430

+0

Bạn sẽ sửa lỗi này như thế nào cho Windows –

0

Lỗi này xảy ra với tôi khi tôi đã được gỡ lỗi PHP header() chức năng:

header('Location: /aaa/bbb/ccc'); // error 

Nếu tôi sử dụng một đường dẫn tương đối hoạt động:

header('Location: aaa/bbb/ccc'); // success, but not what I wanted 

Tuy nhiên khi Tôi sử dụng đường dẫn tuyệt đối như /aaa/bbb/ccc, nó cung cấp lỗi chính xác:

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.

Dường như chức năng tiêu đề chuyển hướng nội bộ mà không cần truy cập HTTP ở tất cả điều kỳ lạ. Sau một số thử nghiệm và thử nghiệm, tôi đã tìm thấy giải pháp thêm lối ra sau tiêu đề():

header('Location: /aaa/bbb/ccc'); 
exit; 

Và nó hoạt động bình thường.

Các vấn đề liên quan