2011-02-18 27 views
1

私はApache 2.2と3のバーチャルホストを持っていて、mod_rewriteの無限のloppが解決できません。 Apacheは私の会社LANの192.168.1.228 IPアドレスにあります。 2つの仮想ホストは完全に動作します。第三は問題を引き起こす。私のネットワーク管理者は、192.168.1.228を指すサブドメインを作成しました。私はアドレス上で、私のLANからこのウェブサイトにアクセスした場合mod_rewrite無限ループ

<VirtualHost 192.168.1.228> 
    DocumentRoot "C:/Apache/htdocs/stansrodowiska" 
    ServerName giostube.mycompany.local 

    LimitInternalRecursion 1000 

    <Directory "C:/Apache/htdocs/stansrodowiska"> 
     Options Indexes FollowSymLinks Includes 
     AllowOverride None 
     Order allow,deny 
     Allow from all 

     RewriteEngine on 

     RewriteCond $1 !^(index\.php|images|upload|css|download|assets|js|nfos|robots\.txt) 
     RewriteRule ^(.*)$ /stansrodowiska/index.php/$1 [L] 

    </Directory> 

</VirtualHost> 

:仮想ホストは、このように設定されているhttp://giostube.mycompany.local/ iが

403 Forbidden 

You don't have permission to access /stansrodowiska/index.php/stansrodowiska/index.php/stansrodowiska/index.php/stansrodowiska/index.php/stansrodowiska/index.php/stansrodowiska/index.php/stansrodowiska/index.php......... on this server 

を取得/stansrodowiska/index.php/は、当然のことながら繰り返されますはるかに頻繁に私は2048文字のHTTP POSTの最大ですと思う。 奇妙なことに、まったく同じmod_rewriteルールが、あらかじめ設定された他のWAMP環境(Vertrigo)で動作するということです。
Codeigniter 1.7.2アプリケーションの下にあります。

mod_rewriteルール内でエラーが発生していますか、他の場所を検索する必要がありますか?

答えて

0

変更この行:

RewriteRule ^(.*)$ /stansrodowiska/index.php/$1 [L] 

へ:

RewriteRule ^(.*)$ /index.php/$1 [L] 
+0

ハーフOK - 私のブラウザのadressbarで私は行く後にします。http:それは変換//giostube.mycompany.local/ URL:http://192.168.1.228/stansrodowiska/gios/index。 IP後の部分はokです。私はそれが私にIPでありアドレスではない理由を知らない:http://giostube.mycompany.local/stansrodowiska/gios/index? 2つ目は、正しいアプリケーションにではなく、別のアプリケーションを持つ他の仮想ホストにリダイレクトすることです。しかし今のところ、私はちょっとした文字になって、ここに2番目のVHostのコードを入れました。別のコメントに書きます。 –

+0

正しい解決策だったmod_rewriteの場合、私は受け入れています。残りは私のエラーで、私はそれを修正しました。 –