.HTACCESS - remove parte da URL

1

Estou usando no meu cms com um htaccess predefinido, como o seguinte:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [L]

Eu quero atualizar o URL para remover 2 "subdiretórios":

de /en/top/solutions/?id=1 a /solutions/?id=1
de /en/top/about/?othervar=1 a /about/?othervar=1

essa é uma das coisas que fiz até agora:

RewriteRule ^en/top/ /$1 [L,R=301]  

Eu não consegui fazê-lo funcionar. Obrigado

    
por Shazam 17.02.2013 / 13:56

1 resposta

2

O $1 significa "use a primeira parte de captura do URL original". Para capturar uma parte do URL original, você precisa usar um parêntese para capturá-lo. Assim:

RewriteRule ^/en/top/(.*) /$1 [QSA]

Isso significa "pegue qualquer coisa que comece com /en/top/ , capture o que segue e coloque na variável $ 1. Reescreva para apenas a variável $ 1 e anexe a string de consulta original.

    
por 19.02.2013 / 09:01

Tags