Jump to content

Url Rewriting Et Modules "Envoyer À Un Ami" / "Contact Us"


Recommended Posts

Bonjour tout le monde,

 

je viens de récupérer la gestion d'une boutique Prestashop (version 1.3.0.7), dont je n'ai pas assuré le développement. Le site a été migré sur un nouveau serveur. Globalement tout fonctionne à merveille, mais je rencontre un problème d'url rewriting sur 2 modules présents en standard : Envoyer à un ami et Contact us : pour chacun de ces modules, mon url de départ est correcte et de la forme

http://maboutique.com/modules/sendtoafriend/sendtoafriend-form.php?id_product=1234

 

Mais pour une raison inconnue cette url est réécrite sous la forme :

http://maboutique.com/modules/sendtoafriend/1234-mon-produit-reecrit.html?id_product=1234

Bien entendu cela se solde par une belle 404.

 

Voici la partie du htaccess qui s'occupe du rewriting des produits :

 

# URL rewriting rules
RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2$3.jpg [L,E]
RewriteRule ^([0-9]+)\-([0-9]+)/([_a-zA-Z0-9-]*)\.jpg$ /img/p/$1-$2.jpg [L,E]
RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ /img/c/$1$2.jpg [L,E]
RewriteRule ^lang-([a-z]{2})/([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$3&isolang=$1$5 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2&isolang=$1$4 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$2&isolang=$1 [QSA,L,E]
RewriteRule ^([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$2$4 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ /product.php?id_product=$1$3 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /category.php?id_category=$1 [QSA,L,E]
RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ /cms.php?id_cms=$1 [QSA,L,E]
RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*)(.*)$ /supplier.php?id_supplier=$1$3 [QSA,L,E]
RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*)(.*)$ /manufacturer.php?id_manufacturer=$1$3 [QSA,L,E]
RewriteRule ^lang-([a-z]{2})/(.*)$ /$2?isolang=$1 [QSA,L,E]

# Catch 404 errors
ErrorDocument 404 /404.php

 

N'étant pas super fort en rewrite je suis donc à la recherche d'une idée pour gérer une exception à la règle de réécriture, afin que mes urls relatives à ces deux modules ne soient pas réécrites, ou au moins que ces modules puissent fonctionner à nouveau !

 

Merci d'avance =)

Link to comment
Share on other sites

  • 4 weeks later...
  • 2 weeks later...
  • 3 weeks later...

Hello Carl,

 

merci de me répondre et désolé pour la réponse tardive (bug de notification ???).

Au niveau SEO / url tout est correct, j'ai fait de nombreux tests sur le htaccess avant de me rendre compte que l'origine du problème est dans le module URL canonique v1.3 : quand on le désactive tout rentre dans l'ordre.

Reste à trouver pourquoi et au besoin dénicher une autre façon d'attribuer une url canonique à chaque produit...

Toute suggestion de module sera la bienvenue ;)

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour Carl,

 

merci pour l'info à propos des notifications ;)

 

J'ai parcouru rapidement le bugtracker, la plupart des bugs concernant les url canoniques portent sur la 1.4 et mon problème concerne la 1.3.

J'ai résolu temporairement la question en désactivant simplement le module "url canonique". Ce qui est embêtant car pas d'urls canoniques = risque de duplicate content, surtout sur une boutique avec plus de 4000 références...

 

Depuis j'ai essayé un autre module ( Canonical SEO v0.4) pour lequel le développeur m'avait garanti qu'il n'y avait pas de réécriture, mais le résultat est identique : dès que le module est activé, les liens "envoyer à un ami" et "contact" sont réécrits n'importe comment et atterrissent sur une 404...

 

Prochaine étape : faire un test d'upgrade vers la dernière version stable et voir si le problème est reproductible.

 

Merci pour ton aide !

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...