URL Rewriting : comment utiliser le signe '=' dans une %{QUERY_STRING}

Consultez la formation sur les stratégies de liens de WebRankInfo / Ranking Metrics

wripedibus
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 19
Inscription: 13 Nov 2008

URL Rewriting : comment utiliser le signe '=' dans une %{QUERY_STRING}

Message le Ven Juin 10, 2011 18:49

Bonjour,

Je souhaite rediriger des pages du type

http://www.monsite.com/dir/index.html?page=/dir/toto.html vers
http://www.monsite.com/dir/toto.html

Normalement l'URL Rewriting suivant devrait faire l'affaire :

RewriteCond %{QUERY_STRING} page=/dir/(.*)
RewriteRule ^dir/index.html(.*) /dir/%1? [L]

mais en fait, le signe '=' est un caractère spécial, et la règle n'est donc pas comprise

---> Quelqu'un sait-il comment faire un 'escape' du signe '=' pour qu'il soit interprété en tant que tel et non comme caractère spécial ?

Merci de votre aide

PS: ne me demandez pas pourquoi j'ai des pages avec des URL si bizarres (!) Cela provient d'une très ancienne version du site qui comprenait des frames.


Blount
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 430
Inscription: 18 Nov 2010

Re: URL Rewriting : comment utiliser le signe '=' dans une %{QUERY_STRING}

Message le Ven Juin 10, 2011 21:46

Le signe « = » n'est pas un caractère spécial. Je ne vois pas d'erreur dans tes règles.
Es-tu sur que rien ne parasite ? Par exemple, des règles placées avant celle-ci.

Par contre, le point est un caractère spécial (signifie « tout caractère »). Dans tes règles, le point n'est pas concidéré comme un point d'extension de fichier.

Ton code, un peu plus propre :
Code: Tout sélectionner
RewriteCond %{QUERY_STRING} page=/dir/(.*)
RewriteRule ^dir/index\.html /dir/%1? [L]


Je ne vois rien qui ne ferai pas fonctionner.

wripedibus
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 19
Inscription: 13 Nov 2008

Re: URL Rewriting : comment utiliser le signe '=' dans une %{QUERY_STRING}

Message le Ven Juin 10, 2011 23:12

Merci Blount,

J'ai ajouté le '\' pour rendre le code un peu plus propre, mais ça ne fonctionne toujours pas.

Je pense que ce doit bien être à cause du "=" car si j'enlève le "=" dans la règle de rewriting et dans l'URL, ça marche...

Si quelqu'un a une idée, je suis donc toujours preneur !

Merci


forty
WRInaute passionné
WRInaute passionné
 
Messages: 1701
Inscription: 30 Oct 2008

Re: URL Rewriting : comment utiliser le signe '=' dans une %{QUERY_STRING}

Message le Sam Juin 11, 2011 12:53

si tu veux faire une redirection il faut mettre [L,R=301] plutôt


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Netlinking (liens et référencement) : apprenez ce qu'est réellement un bon lien pour le référencement et surtout comment en obtenir. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités