Redirections .htaccess PrestaShop : écrire des règles sans casser votre boutique
Redirections .htaccess PrestaShop : ecrire des regles sans casser votre boutique
Le fichier .htaccess est l'un des fichiers les plus puissants et les plus dangereux de votre installation PrestaShop. Un seul caractere mal place peut mettre toute votre boutique hors ligne. Mais maitriser les redirections .htaccess est essentiel pour le SEO - vous en avez besoin lors du changement d'URLs, de la migration depuis une autre plateforme, de la suppression d'anciens produits ou de la restructuration de votre arbre de categories.
Comment PrestaShop utilise .htaccess
PrestaShop genere et gere automatiquement le fichier .htaccess. Lorsque vous activez les URLs simplifiees dans les parametres SEO et URLs, PrestaShop ecrit des regles de reecriture entre deux commentaires marqueurs.
Regle critique - N'ajoutez jamais vos redirections personnalisees a l'interieur de ce bloc. PrestaShop les ecrasera lors de la prochaine regeneration. Placez vos regles AVANT le bloc PrestaShop.
Types de redirections
301 - Redirection permanente
Utilisez quand une page a definitivement demenage. Les moteurs de recherche transferent la valeur SEO vers la nouvelle URL.
302 - Redirection temporaire
Utilisez quand une page est temporairement indisponible.
410 - Gone
Utilisez quand une page a ete definitivement supprimee sans remplacement.
Syntaxe de base des redirections
# Rediriger une URL unique
Redirect 301 /ancienne-page.html https://votreboutique.com/nouvelle-page.html
# Rediriger une ancienne URL produit
Redirect 301 /ancien-produit.html https://votreboutique.com/fr/nouveau-produit.htmlRedirections basees sur des patterns avec RewriteRule
RewriteEngine On
RewriteRule ^ancien-dossier/(.*)$ https://votreboutique.com/nouveau-dossier/$1 [R=301,L]Scenarios courants de redirection PrestaShop
Scenario 1 - Migration depuis une autre plateforme
# WooCommerce vers PrestaShop
RewriteRule ^product/ancien-slug/?$ https://votreboutique.com/fr/nouvelle-url.html [R=301,L]Scenario 2 - Forcer HTTPS et WWW
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]Regles qui peuvent casser PrestaShop
Boucles de redirection infinies
L'erreur la plus dangereuse. Toujours utiliser des conditions pour prevenir les boucles.
# DANGEREUX
RewriteRule ^(.*)$ https://votreboutique.com/$1 [R=301,L]
# SUR
RewriteCond %{HTTP_HOST} !^www\.votreboutique\.com$ [NC]
RewriteRule ^(.*)$ https://www.votreboutique.com/$1 [R=301,L]Casser l'acces au back office
# SUR - exclure admin et API
RewriteCond %{REQUEST_URI} !^/admin [NC]
RewriteCond %{REQUEST_URI} !^/api [NC]
RewriteCond %{REQUEST_URI} !^/modules [NC]
RewriteRule ^(.*)$ https://votreboutique.com/fr/$1 [R=301,L]Tester vos redirections en securite
# Toujours sauvegarder d'abord
cp .htaccess .htaccess.backup
# Tester avec curl
curl -I -L https://votreboutique.com/ancienne-page.htmlOu placer les regles personnalisees
# VOS REDIRECTIONS ICI (avant le bloc PrestaShop)
Redirect 301 /ancienne-page.html https://votreboutique.com/nouvelle-page.html
# ~~start~~ Bloc PrestaShop
# ... regles auto-generees ...
# ~~end~~ Bloc PrestaShopQuand utiliser un module
Considerez un module de redirection quand du personnel non technique doit gerer les redirections, quand vous avez des centaines de redirections, ou quand vous voulez la detection automatique des 404.
Cette réponse vous a-t-elle été utile ?
Vous avez encore des questions ?
Can't find what you're looking for? Send us your question and we'll get back to you quickly.