Aller au contenu

Rewriting - PB /?home --> /share.html


Sujets conseillés

Bonjour,

J'ai un petit souci pour faire du rewriting.

dans .htaccess j'ai mis :

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 :

...
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

Lien vers le commentaire
Partager sur d’autres sites

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 ! :)

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

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

Dan

PS: bienvenue sur le Hub ;)

Lien vers le commentaire
Partager sur d’autres sites

Génial ça marche!!!!

Il faut juste retire le ? dans ta proposition

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

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

Merci encore de ton aide :thumbsup: et bonjour à tous :!:

Lien vers le commentaire
Partager sur d’autres sites

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 ;)

Lien vers le commentaire
Partager sur d’autres sites

Merci. J'avais eu une erreur avec le ? en plus mais en vidant mon cache sous firefox ça marche très bien.

Super!! :smartass:

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?

Modifié par veda
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...