Comportamento de redirecionamento estranho de 301

1

O 301 está redirecionando, mas está anexando o URL antigo ao final do novo URL, assim:

link

Este é o meu .htaccess

RewriteEngine On
RewriteCond %{HTTP_HOST} ^example\.co.uk [NC]
RewriteRule ^(.*)$ http://www.example.co.uk/$1 [R=301,L]
Redirect 301 /old-dir/old-page/ http://www.example.co.uk/new-dir/new-page/
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ /index.php?/$1 [L]
    
por showFocus 19.02.2012 / 22:34

1 resposta

1

Não use mod_alias para o seu redirecionamento; eles não estão operando na ordem esperada com base na ordem em que você os colocou no arquivo. A string de consulta adicionada ao local de redirecionamento é proveniente do último RewriteRule .

Substitua sua linha Redirect :

RewriteRule ^old-dir/old-page/?$ http://www.example.co.uk/new-dir/new-page/ [R=301,L]

Isto está assumindo que seu contexto de htaccess é a raiz do documento.

    
por 19.02.2012 / 22:53