Todas as minhas RedirectPermanent
regras adicionam uma string de consulta ao URL. Essa consulta indesejada corresponde ao URL aproximado redirecionado redefinido da RewriteRule
seguinte forma:
RewriteRule ^page-([0-9]+)-(.*)$ index.php?page=page&id=$1 [L]
Esta regra funciona perfeitamente para criar esse tipo de URL:
https://example.com/page-320-enfants
Os redirecionamentos 301 são definidos da seguinte forma:
RedirectPermanent /page-320-enfants /page-2028-pour-les-invitees
Problema: isso adiciona uma string de consulta ao URL recém-criado:
https://example.com/page-2028-pour-les-invitees?page=page&id=320
Tentei usar RewriteRule
(URL antigo para novo URL) em vez do RedirectPermanent
recomendado nas perguntas antigas, mas teve exatamente o mesmo efeito.
Estou esquecendo de algo?
ATUALIZAR :
Conforme recomendado, tentei usar RewriteRule
colocado antes da própria regra comum:
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
# Redirect Permanent #
RewriteRule ^page-2028-pour-les-invitees$ page-320-enfants [R=301,L]
# Common rules #
...
RewriteRule ^page-([0-9]+)-(.*)$ index.php?page=page&id=$1 [L]
...
Esta tentativa não é acionada. O problema poderia estar na sintaxe?