Jump to content

Recommended Posts

Posted

Bonjour,

Afin de pouvoir accéder à une url plus simplement, bien que n'y connaissant pas grand chose, j'ai réussi à écrire la règle suivante dans mon .htaccess:

RewriteRule   ^rss([0-9]+)\.xml$ http://www.example.com/index.php?act=rssout&id=$1 [L]

Cela fonctionne et j'accède maintenant aussi bien à l'ancienne url ./index.php?act=rssout&id=21 qu'a celle réécrite ./rss21.xml

Seulement, j'aimerais rediriger automatiquement (redirection 301) l'ancienne url vers la nouvelle. J'aurais pensé que le fait de rajouter [R=301,L] en fin de ligne suffirait mais ce n'est pas le cas. Comment est-il possible de réaliser la réécriture et la redirection ?

Posted

J'ai pu trouver une solution après pas mal de recherches, grace à un sujet de webmasterworld: Changing Dynamic URLs to Static URLs

Je ne sais pas si c'est correctement appliqué mais ça fonctionne:

RewriteRule   ^rss([0-9]+)\.xml$ http://www.example.com/index.php?act=rssout&id=$1 [L]
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\?act=rssout&id=([0-9]+)\ HTTP/
RewriteRule ^index\.php$ http://www.example.com/rss%1.xml? [R=301,L]

Par contre, je ne comprends pas la signification de ^[A-Z]{3,9}\ ni de HTTP/ dans la 2eme ligne, des explications sont souhaitées ... si quelqu'un s'y connait un peu, merci d'avance.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
×
×
  • Create New...