Back to blog
301 Redirect Checker8 min readSeptember 4, 2026

301 Redirects in PrestaShop: .htaccess, Modules and Multistore

In PrestaShop the back office regenerates .htaccess and can wipe your rules. How to write redirects that survive it, when a module is worth it, and what changes in a multistore setup.


PrestaShop has one quirk that causes more trouble here than anything else: the .htaccess file is not entirely yours. The back office generates it, and regenerates it every time you touch the URL configuration. Put your redirects in the wrong place and they vanish without warning and without a trace in any log.

First: friendly URLs

Before redirecting anything, check under Shop Parameters → Traffic & SEO that friendly URLs are on. With URLs like index.php?id_product=42 no redirect is worth writing: you have no stable paths to map.

Option 1: .htaccess, carefully

It is the direct route and the fastest for a handful of redirects. The syntax is ordinary Apache:

apache
# A single URL
Redirect 301 /old-category https://yourshop.com/new-category

# A pattern, with a regular expression
RewriteEngine On
RewriteRule ^old-products/(.*)$ /catalogue/$1 [R=301,L]

PrestaShop writes its own block into .htaccess between start and end comment markers, and rewrites that block wholesale when you regenerate the file from Traffic & SEO. Your rules have to live outside it. And after every regeneration, open the file again and confirm they are still there.

A second warning matters just as much: this only works on Apache and LiteSpeed. If your hosting runs NGINX there is no .htaccess at all and the rules have to go into the server configuration, which shared hosting normally does not let you reach.

Option 2: a redirect module

The PrestaShop Addons marketplace has several modules for managing redirects from the back office. They pay off in three specific situations, and not before:

  • When the volume is high and you need to import a whole map rather than hand-edit a file.
  • When whoever maintains the shop has no FTP access and no comfort with Apache.
  • When you are on NGINX and .htaccess simply does not exist.

In exchange, a module-managed redirect resolves inside PHP rather than at the server: it is slightly slower and depends on the module staying maintained. For stable, permanent rules, .htaccess remains the sturdier option.

Multistore: the fault you cannot see

With several shops in one installation, they all share the .htaccess at the root. A rule written without conditioning the domain applies to all of them, and you end up redirecting a path on yourshop.fr that should only have redirected on yourshop.com.

apache
# Condition every rule on its shop's domain
RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?yourshop\.com$ [NC]
RewriteRule ^old-offer$ /promotions [R=301,L]

RewriteCond %{HTTP_HOST} ^(www\.)?yourshop\.fr$ [NC]
RewriteRule ^offre-ancienne$ /promotions [R=301,L]

The chains PrestaShop typically produces

Where the chain comes fromHow to resolve it
Your redirect plus PrestaShop’s canonicalPrestaShop redirects to the product’s canonical URL on its own. If your rule points at a non-canonical variant, two hops chain up: point straight at the canonical.
www and non-www not unifiedThe domain redirect stacks on top of yours. Unify www/non-www and http/https in a single rule first, and have the rest point at the final format already.
Rules piled up from old migrationsEach migration leaves its layer. Follow the chain from the oldest URL and rewrite the first rule to point at the current destination.

Check that they survive

In PrestaShop you have to verify twice: once when you create the rules and again after any change to the URL configuration, because that is where they get lost. Take the old URLs, follow the whole chain and confirm there is a single hop to the final destination.

Try the tool for free

Analyze your URLs with 301 Redirect Checker by iRankly. No sign-up, no credit card.

Use tool for free

If you are on another platform, or want the detail of each redirect type:


Try the tool for free

Analyze your URLs with 301 Redirect Checker by iRankly. No sign-up, no credit card.

Use tool for free