Je viens de changer les URL d'un fichier de test.php?id=111 en page/111 La règle de réécriture : Code: RewriteRule ^page[/]([0-9]+)$ test.php?id=$1 [L] ce qui marche très bien. Je dois reprendre cet exemple pour un site donc au niveau du référencement je souhaite mettre en place une redirection 301 sur les pages déjà indexée par google et dont les URL on le mauvais format. Par exemple si la page "test.php?id=999" est appelée, une redirection 301 devra se faire vers "page/999" J'ai donc testé avec cette règle : Code: RewriteRule ^test\.php\?id=999$ page/999 [R=301,L] Je n'ai pas l'impression que ça a fontcionné. La page est directement appelée étant donné qu'elle existe toujours et dans la barre d'adresse j'ai toujours l'URL "test.php?id=999". Voici le contenu du fichier .htaccess : Code: Options +FollowSymlinks RewriteEngine on RewriteBase /test/test_url_rewriting/ RewriteRule ^test\.php\?id=999$ page/999 [R=301,L] RewriteRule ^page[/]([0-9]+)$ test.php?id=$1 [L] Y aurait-il une erreur quelque part ?
Re: Redirection 301 : ne fonctinne pas du tout... Je crois qu'il faut séparer la querystring dans une condition, du genre : Code: RewriteCond %{QUERY_STRING} ^id=999$ RewriteRule ^test\.php$ page/999 [R=301,L]
Re: Redirection 301 : ne fonctinne pas du tout... J'ai aussi testé avec cette condition mais ça redirige mal et j'ai ce message d'erreur : La page n'est pas redirigée correctement Et ça me réécrit l'URL de cette manière : page/999?id=999 Je ne sais pas du tout pourquoi il rajoute le query_string en bout d'URL
Re: Redirection 301 : ne fonctinne pas du tout... C'est à cause d'une boucle de redirection que vous avez générée via votre code. Pour éviter ce problème, vous pouvez lire mon tutoriel à ce sujet (https://www.webrankinfo.com/forum/t/tutoriel-eviter-les-boucles-de-redirection.168006/). Néanmoins, je vais vous proposer une solution encore plus simple pour votre cas: Code: Options +FollowSymlinks RewriteEngine on RewriteCond %{THE_REQUEST} ^.*test\.php?id=([0-9]+) RewriteRule ^.*$ /page/%1? [R=301,L] RewriteRule ^page/([0-9]+)$ /test.php?id=$1 [L]
Re: Redirection 301 : ne fonctinne pas du tout... Merci à toi Giustino, je doutais bien qu'il y avait une boucle quelque part... Ca marche nickel et ton tuto est bien pratique a+
Bonjour j'ai bien lu vos articles depuis, (3h ) mais un langage difficile a retenir même en copie coller rien à faire code 500 error. mon herbergeur ma conseillé d'activé la réecriture j'ai crée un répertoire test dedans un fichier test.html et .htaccess chargé avec filezila Options +FollowSymlinks RewriteEngine on RewriteRule ^inconnu\.html$ /test/test.html [L] et la rien du tout même pas ok bon passons à la redirection de ma page produit avec ça: Options +FollowSymlinks RewriteEngine on RewriteRule ^inconnu\.html$ /test/test.html [L] redirect 301 /nouveau_chevets_bois_rouge_patines_4525.htm http://monsite.fr/index.php?id_product=8&controller=product&live_configurator_token=fe365e24b852752b9e3479b80c9acb38&id_shop=1&id_employee=1&theme=theme5&theme_font=font5 et bien la page produit indique aussi error 500 pouvez vous me donner un exemple concret d'un fichier .htaccess valable ou copiable si je peux dire. car j'ai tout essayé avec uniquement redirectpermanent ou redirect 301 seul mais rien n'y fait: RedirectPermanent /nouveau_chevets_bois_rouge_patines_4525.htm http://monsite.fr/index.php?id_product=8&controller=product&live_configurator_token=fe365e24b852752b9e3479b80c9acb38&id_shop=1&id_employee=1&theme=theme5&theme_font=font5 Merci à vous BoB...