Version complète: sur le forum Webmaster Hub : Rewriting - PB /?home --> /share.html
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > Fichier .htaccess et réécriture d'URLs
veda
Bonjour,

J'ai un petit souci pour faire du rewriting.

dans .htaccess j'ai mis :

CODE
order allow,deny
allow from all
Options +FollowSymlinks
RewriteEngine on
RewriteRule   ^home2$   share.html  [L]


ça ça marche quand je tape http://www.monsite.org/home2 je suis bien redirigé vers la page http://www.monsite.org/share.html

le souci c'est que je veux ce type d'url en fait : http://www.monsite.org/?home2

J'ai mis ça et ça marche pas :

CODE
...
RewriteRule   ^\?home2$   share.html  [L]


Je suis redirigé vers la page principale de mon blog dotclear.

http://www.monsite.org/?home2 n'existe pas au sein de mon blog je précise.

Les pages de mon blog sont du style:

http://www.monsite.org/?3449-titre-de-l-article pour un billet
http://www.monsite.org/?contact pour une page connexe.

Je sais pas mais j'ai l'impression que dotclear me fout le boxon et m'empeche t'utiliser le ? pour faire du rewriting.

Seul souci je dois absolument avoir un url de ce type :-(


Quelqu'un pourrait m'aider s'il vous plait? Merci beaucoup
Dan
CITATION(veda @ samedi 24 novembre 2007 à 12:16) *
Je sais pas mais j'ai l'impression que dotclear me fout le boxon et m'empeche t'utiliser le ? pour faire du rewriting.

Et non, ce n'est pas Dotclear, c'est toi ! smile.gif

Avec mod_rewrite, il faut traiter les QUERY_STRING distinctement... (comme les HOST et les PORT)
Et toute valeur apparaissant après un ? en fait partie.

Il faut utiliser une réécriture conditionnelle comme ceci
CODE
RewriteCond %{QUERY_STRING} home2
RewriteRule (.*) share.html [L]


Dan

PS: bienvenue sur le Hub wink.gif
veda
Génial ça marche!!!!

Il faut juste retire le ? dans ta proposition

CODE
RewriteCond %{QUERY_STRING} home2
RewriteRule (.*) share.html [L]


Je suis un gros noobie, je viens de découvrir .htaccess et Mod_Rewrite hier smartass.gif

Merci encore de ton aide a_thumbsup_20.gif et bonjour à tous q_smallexcla.gif
Dan
Oui, mais si tu utilises une redirection 301 avec une URL de type http://... il faut ajouter le ? en fin pour éviter d'avoir la QUERY_STRING dans l'URL réécrite.
Mais là comme on fait une réécriture locale, ce n'est pas nécessaire.

J'ai corrigé mon post wink.gif
veda
Merci. J'avais eu une erreur avec le ? en plus mais en vidant mon cache sous firefox ça marche très bien.

Super!! smartass.gif

petite question en passant la page home2 existait précédemment et avait un PR google de 3 logiquement je vais le préserver avec cette nouvelle page non?
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.