CakePHPアプリケーションで次のエラーが表示されます。
構成エラーの可能性があるため、要求が10の内部リダイレクトの制限を超えました。必要に応じて、「LimitInternalRecursion」を使用して制限を増やします。 「LogLevel debug」を使用して、バックトレースを取得します。リファラー: http://projectname.dev/
ルートフォルダーにある.htaccessは、次のようになります。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ app/webroot/ [L]
RewriteRule (.*) app/webroot/$1 [L]
</IfModule>
そしてアプリフォルダ内:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
および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>
私はこのチュートリアルに従っていました:
私はここで問題の解決策を見つけました:
http://willcodeforcoffee.com/2007/01/31/cakephp-error-500-too-many-redirects/
Webrootの.htaccessファイルは次のようになります。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
これの代わりに:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /projectname
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
//Just add
RewriteBase /
//after
RewriteEngine On
//and you are done....
//so it should be
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
このエラーは、PHP header ()関数をデバッグしているときに発生しました。
header('Location: /aaa/bbb/ccc'); // error
相対パスを使用すると動作します:
header('Location: aaa/bbb/ccc'); // success, but not what I wanted
ただし、/aaa/bbb/ccc
のような絶対パスを使用すると、正確なエラーが表示されます。
構成エラーの可能性があるため、要求が10の内部リダイレクトの制限を超えました。必要に応じて、「LimitInternalRecursion」を使用して制限を増やします。 「LogLevel debug」を使用して、バックトレースを取得します。
ヘッダー関数はHTTPをまったく使用せずに内部的にリダイレクトするようです。これは奇妙です。いくつかのテストと試行の後、header()の後にexitを追加するソリューションを見つけました。
header('Location: /aaa/bbb/ccc');
exit;
そして、それは適切に機能します。
私はこれを http://willcodeforcoffee.com/2007/01/31/cakephp-error-500-too-many-redirects/ で解決しました
RewriteBase /
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
.htaccessファイルに