Loop infinito ao colocar reescrita no contexto Directory no Apache

1

Quero redirecionar www.example.com/foo para www.example.com/bar/index.php/foo

Então eu tenho a regra (mod_rewrite)

<Location />
    RewriteEngine on
    RewriteRule /(.*) /bar/index.php/$1 [L]
</Location>

Esta configuração causou um loop infinito, como consertar?

Obrigado.

    
por Howard 22.01.2011 / 16:43

2 respostas

2

Como Ency sugeriu, você vai querer ter certeza de que não está tentando acessar index.php :

RewriteEngine on
RewriteCond %{REQUEST_URI} !/bar/index.php/.*
RewriteRule /(.*) /bar/index.php/$1 [L]

Espero que isso ajude.

    
por 22.01.2011 / 17:01
0

Você deve tentar adicionar o RewriteCond: RewriteCond% {HTTP_USER_AGENT} ^ Mozilla. Chrome. $

Isso deve impedir o loop infinito * executando o redirecionamento somente quando a solicitação vier de um navegador.

* - Estou supondo que a solicitação redirecionada do apache terá um cabeçalho http vazio HTTP_USER_AGENT / apache, não o cabeçalho original. P.S: você pode querer adicionar o cabeçalho HTTP da ie à lista.

    
por 13.05.2011 / 19:07