Jump to content

Redirection 301 boutique ecwid


Recommended Posts

Bonjour,

 

Après de multiples tests et recherche sur le web, je me résous à poster sur le forum en espérant trouver un peu d'aide.

Voilà mon souci :

Je viens de refaire mon site et j'ai opté pour prestashop 1.5.4. Précédemment mon site utilisait la solution ECWID. J'aimerais donc rediriger les internautes et les moteurs vers les nouvelles pages.

 

Seulement les url issues de ECWID sont de la forme :

- www.mon-site.com/#!/~/product/category=5236246&id=21751603 (pour un produit)

- www.mon-site.com/#!/~/category/id=2846266&offset=0&sort=addedTimeDesc (pour une catégorie)

 

A priori je dois faire une redirection pour chacune des pages dans le fichier .htaccess.

 

J'ai tester sans succès :

RedirectPermanent www.mon-site.com/#!/~/product/category=5236246&id=21751605 www.mon-site.com/alimentaire/335-confiture-fruits-des-bois-au-genepi.html

 

Comment dois-je faire ?

Dois-je utiliser une méthode de réécriture en utilisant RewriteCond et RewriteRule ?

 

Merci d'avance à tous.

Edited by Benjbe (see edit history)
Link to comment
Share on other sites

Bonjour,

Merci pour ta réponse.

J'ai essayé avec ta solution sans succès...

 

Ci-dessous mon .htaccess, je dois surement me tromper dans la syntaxe ou le placement ...

 

# ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again

# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution

# http://www.prestashop.com - http://www.prestashop.com/forums

 

<IfModule mod_rewrite.c>

SetEnv PHP_VER 5

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule . - [E=REWRITEBASE:/]

RewriteRule ^api/?(.*)$ %{ENV:REWRITEBASE}webservice/dispatcher.php?url=$1 [QSA,L]

 

# Images

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1-$2$3$4.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9]+)\-([0-9]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1-$2$3.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$1$2$3$4$5$6.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$1$2$3$4$5$6$7.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$1$2$3$4$5$6$7$8.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$1$2$3$4$5$6$7$8$9.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9-]*)?(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$4/$5/$6/$7/$8/$1$2$3$4$5$6$7$8$9$10.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^c/([0-9]+)(\-[\.*_a-zA-Z0-9-]*)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2$3.jpg [L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^c/([a-zA-Z_-]+)(-[0-9]+)?/.+\.jpg$ %{ENV:REWRITEBASE}img/c/$1$2.jpg [L]

 

# Dispatcher

RewriteCond %{REQUEST_FILENAME} -s [OR]

RewriteCond %{REQUEST_FILENAME} -l [OR]

RewriteCond %{REQUEST_FILENAME} -d

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^.*$ - [NC,L]

RewriteCond %{HTTP_HOST} ^www.mon-site.com$

RewriteRule ^.*$ %{ENV:REWRITEBASE}index.php [NC,L]

 

RewriteRule ^www.mon-site.com/#!/~/product/category=5236246&id=21751605 www.mon-site.com/alimentaire/335-confiture-fruits-des-bois-au-genepi.html [R=301,L]

</IfModule>

 

#If rewrite mod isn't enabled

ErrorDocument 404 /index.php?controller=404

 

# ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again

Link to comment
Share on other sites

Pour commencer je tiens à signaler à ceux qui liraient le sujet que cette personne a mis "www.mon-site.com" pour ne pas avoir à indiquer l'url de son site. C'est une pratique courante, mais tout le monde ne semble pas le savoir, donc je préfère le souligner.

 

J'ai eu un cas similaire au vôtre, mais la structure d'url n'était pas tout à fait la même. Le souci est que la personne qui m'aide à la technique au bureau est en congés, donc je suis un peu limité.

 

Je vous explique ma problématique et mes solutions, on devrait arriver à trouver ensemble en se passant des développeurs (ou pas ^^)

 

J'avais un client sur une solution autre que prestashop et qui voulait migrer vers cette solution.

 

La forme de ses urls était:

 

www.monurldesite.com/produits/REFERENCEPRODUIT-nom-du-produit.html

 

Il voulait passer vers la structure d'url de prestashop suivante:

 

www.monurldesite.com/ID-nom-du-produit.html (nous avons volontairement retiré le dossier catégorie des urls, c'est une vision SEO, tout le monde ne la partagera pas)

 

Nous avons donc créé un dossier "produits" sur le serveur, et collé dans ce dossier un fichier .htaccess contenant ceci:

 

<IfModule mod_rewrite.c>

# URL rewriting module activation

RewriteEngine on

 

# URL rewriting rules

RewriteRule ^REFERENCEPRODUIT/.*$ /ID-nom-du-produit.html [R=301,L]

(ceci url par url, il y a 3000 lignes en tout, mais nous avons automatisé la génération des url avec un script)

 

Je serais donc tenté de vous conseiller de tester en créant des dossiers et sous-dossiers (/#!/~/product/) et dans 'product' mettre un fichier htaccess de redirections.

 

Cette manipulation permettra de conserver le fichier .htaccess de prestashop "intact" et plus léger.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...