web-dev-qa-db-ja.com

リクエストが10の内部リダイレクトの制限を超えました

だからここにエラーがあります

[Mon Sep 30 00:09:53 2013] [error] [client 66.249.66.205] 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.
[Mon Sep 30 00:09:53 2013] [debug] core.c(3120): [client 66.249.66.205] r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /home/mysitecom/domains/mysite.com/public_html/index.php
[Mon Sep 30 00:09:53 2013] [debug] core.c(3126): [client 66.249.66.205] redirected from r->uri = /images/2013/02/600x376_0.076827001313237200_pixnaz_ir_1.jpg

どうすればこれを引き起こしているものを見つけることができますか?

それはindex.phpの周りのループのようですが、画像である最後のものを除いて、おそらく私のページの1つ(インデックスではない)内にリンクされています

私はmvcフレームワークであるcodeigniterを使用しており、すべてがindex.phpファイルを経由します....したがって、どこで問題が発生するかを理解するのは少し難しいです。

どうやらそれはhtaccessと関係があるようです(それはいくつかのブログで言及されています)

これが私のhtaccです...基本的にはすべてのリンクからindex.phpを削除しますが、異常なことは何もありません

<IfModule mod_rewrite.c>
    RewriteEngine On

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

<IfModule !mod_rewrite.c>
    # If we don't have mod_rewrite installed, all 404's
    # can be sent to index.php, and everything works as normal.
    # Submitted by: ElliotHaughin

    ErrorDocument 404 index.php
</IfModule> 
AddType image/x-windows-bmp bmp

私は専用サーバーを持っています

2
max

index.phpindex.php?/index.phpに書き換えないように、例外を追加する必要があります。 (また、/の後に?が必要ですか?)

そのループを停止するためのRewriteCondは次のとおりです。

RewriteCond %{REQUEST_URI} != /index.php/

RewriteRuleの前に挿入する必要があります。

2
Jenny D

ループの理由は、Apacheが.htaccessファイルで書き換えがトリガーされるたびに内部サブリクエストを作成するためです。これは、.htaccessでの書き換えを避ける必要がある多くの理由の1つです。したがって、httpd.confにアクセスできる場合は、そこに書き換えを入れてください。書き換えを構成に入れることができない場合、本当に.htaccessファイルを使用する必要がある場合は、ループを壊す条件を必ず追加してください。

0