Jan Posté 9 Septembre 2006 Posté 9 Septembre 2006 Bonjour, Mon .htacess à la racine de -http://www.presidentielle-2007.net/ dit ceci: ...RedirectPermanent /portrait-noel-mamere.htm http://www.presidentielle-2007.net/portrait,noel-mamere.htm...RewriteEngine on...RewriteRule ^portrait-(.+)\.htm$ /candidats.php?candidat=$1 [L]RewriteRule ^portrait,(.+)\.htm$ /non-candidats.php?candidat=$1 [L]... L'idée est la suivante: - Jusqu'à maintenant l'URL -http://www.presidentielle-2007.net/portrait-noel-mamere.htm présentait le contenu de -http://www.presidentielle-2007.net/candidats.php?candidat=noel-mamere - J'ai ajouté la redirection permanente et la 2ème règle de réécriture pour que -http://www.presidentielle-2007.net/portrait-noel-mamere.htm redirige vers -http://www.presidentielle-2007.net/portrait,noel-mamere.htm qui présente le contenu de -http://www.presidentielle-2007.net/non-candidats.php?candidat=noel-mamere Ca ne marche pas comme je veux. Quand je tape -http://www.presidentielle-2007.net/portrait-noel-mamere.htm j'obtiens bien une 301, mais vers -http://www.presidentielle-2007.net/portrait,noel-mamere.htm?candidat=noel-mamere Comment corriger mon .htaccess pour éliminer ce "?candidat=noel-mamere" indésirable? Merci.
Jeanluc Posté 10 Septembre 2006 Posté 10 Septembre 2006 Bonjour, Le problème provient d'une autre règle que celles que tu as indiquées. Jean-Luc
Jan Posté 10 Septembre 2006 Auteur Posté 10 Septembre 2006 Jean-Luc, je viens de faire l'essai en ne laissant que les 4 lignes que je montre plus haut dans le .htaccess: le problème est bien présent. Je pense donc que ce sont ces 3 règles qui en sont la cause. Il doit falloir supprimer ce query string quelque part, mais ou et comment?
Dan Posté 10 Septembre 2006 Posté 10 Septembre 2006 Salut Jan, Je remplacerais le RedirectPermanent par RewriteRule /portrait-noel-mamere.htm http://www.presidentielle-2007.net/portrait,noel-mamere.htm [R=301,L] que je mettrais avant les autres règles... Dan
Jan Posté 10 Septembre 2006 Auteur Posté 10 Septembre 2006 Merci Dan, Ca marche en enlevant le / initial: RewriteRule portrait-noel-mamere.htm http://www.presidentielle-2007.net/portrait,noel-mamere.htm [R=301,L] En revanche j'avoue que je n'ai pas tout compris au pourquoi du problème avec un RedirectPermanent
Remi Posté 10 Septembre 2006 Posté 10 Septembre 2006 Il faut bien garder à l'esprit que lorsque un Redirect est vérifié, Apache ne s'arrête pas de passer en revue le htaccess : Il enregistre la redirection mais ne l'applique pas tout de suite... il continue de passer en revue le htaccess mais (et c'est là que ça se corse, comme disait Napoléon) *avec l'url d'origine* ( et non la cible de la redirection)... Cela donne parfois des trucs un peu bizarres comme celui que tu cites. Et dans ce cas, la meilleure solution est bien celle que Dan t'a donnée, c.a.d. utiliter l'UR pour faire la 301.
Dan Posté 10 Septembre 2006 Posté 10 Septembre 2006 Merci Dan,Ca marche en enlevant le / initial: Et oui, j'oubliais que ton site était sur serveur mutualisé OVH (60GP si je ne m'abuse ) Et pour le RedirectPermanent, je préfère ne jamais mélanger avec RewriteRule. J'utilise soit mod_alias, soit mod_rewrite ... et je ne pense pas qu'il soit conseillé d'utiliser les deux. En tout cas c'est inutile, parce que mod_rewrite sait TOUT rediriger, alors que mod_alias ne traite que les cas les plus simples. Le seul cas où j'utilise mod_alias (et RedirectPermanent) est pour rediriger un site complet, comme http://www.webmaster-hub.eu ... sans règle particulière.
Jan Posté 10 Septembre 2006 Auteur Posté 10 Septembre 2006 Merci Dan et Rémi pour ces explications. OVH 60GP, c'est juste
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant