t_penible Posté 29 Septembre 2010 Posté 29 Septembre 2010 Bonjour à tous, je planche sur un problème depuis cet après-midi sans pouvoir m'en sortir, aussi je viens vous demander de l'aide. J'ai fait de l'URL Rewriting sur un site existant et déjà référencé dans Google. Mais avec les nouvelles URL, j'ai oublié de faire les redirections 301 pour garder les pages rank... Le problème c'est que je n'arrive pas à avoir le bon code pour faire du rewriting et du redirect en même temps ! Au départ il y avait : http://www.domain.com/fr_FR/contact.php (indexée et page rankée) Maintenant : http://www.domain.com/fr/contact/ (indexée et sans page rank) Je voudrais dire à Google que ces 2 URL sont au final le même fichier php, et que dorénavant http://www.domain.com/fr_FR/contact.php va à http://www.domain.com/fr/contact/. Voici la ligne de mon fichier .htaccess du dossier /fr_FR: RewriteRule ^contact.php$ http://www.domain.com/fr/contact [R=301,QSA] La redirection se passe bien, mais arrivé sur la page http://www.domain.com/fr/contact, j'ai une erreur 404. et si je rajoute : RewriteRule ^contact$ contact.php [QSA,L] j'ai une jolie boucle infinie. Comment lui dire de rewriter l'url avec une redirection 301 en même temps ? Merci de votre aide.
baulet Posté 29 Septembre 2010 Posté 29 Septembre 2010 (modifié) bonjour, tu as le RedirectPermanent qui te fait un 301: RedirectPermanent /ancienne-url.php http://www.ton-site.com/nouvelle-url.php Modifié 29 Septembre 2010 par baulet
t_penible Posté 4 Octobre 2010 Auteur Posté 4 Octobre 2010 Hello, J'ai trouvé la solution à mon problème en testant la variable THE_REQUEST dans une règle RewriteCond. En fait, c'est ce test qui permet de faire la différence entre une redirection externe et un rewrite d'URL interne au serveur. RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /.*contact\.php\ HTTP/ RewriteRule ^contact\.php$ http://www.domain.com/fr/contact/ [R=301,L]RewriteRule ^contact/$ contact.php [L,NC,QSA] Bonne journée.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant