Apache mod_rewrite comportamento estranho no Internet Explorer

3

Estou tentando configurar o redirecionamento para alguns domínios raiz.

Em primeiro lugar, aqui está o código no meu arquivo link :

<VirtualHost *:80>

ServerAdmin ****@example.com
ServerName example.com
ServerAlias example2.com

RewriteEngine On
RewriteCond %{HTTP_HOST} !^192\.168\.0\.1$    # This is our WAN IP
RewriteCond %{HTTP_HOST} !^www\. [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^/?(.*) http://www.%{HTTP_HOST}/$1 [L,R,NE]

</VirtualHost>

O que isso faz é redirecionar o domínio raiz de example.com ou example2.com ou de qualquer host diferente de www para www.example (2) .com

A parte em que estou tendo um problema é o RewriteRule em si. o $ 1 deve corresponder ao padrão do RewriteRule e adicioná-lo na substituição. Por exemplo: " link " deve ser reescrito para " link "

Funciona em todos os navegadores modernos, como é esperado, exceto para o IE8 ou IE9 (não testei outras versões do IE).

No IE, isso funciona: " link " para " link "

No IE, isso não funciona: " link " para " link "

Alguém tem uma explicação para esse comportamento?

Espero ter explicado bem o suficiente.

Obrigado.

    
por Ryan Mortier 04.11.2011 / 20:44

1 resposta

2

Colocando este código em htaccess, fixei um similar para mim:

BrowserMatch "MSIE [2-8]" nokeepalive downgrade-1.0 force-response-1.0
    
por 07.10.2013 / 22:09