Configurare redirect 301 in PrestaShop dopo una migrazione
Quando migri un negozio PrestaShop, gli URL spesso cambiano. Senza redirect, ogni vecchio indirizzo restituisce un 404 a visitatori e motori di ricerca. Un redirect 301 indica che la pagina si è spostata in modo permanente ed è la scelta giusta per una migrazione definitiva. Un 302 è temporaneo e non dovrebbe essere usato per mappe di migrazione da vecchi a nuovi URL.

Prepara una mappa vecchio-nuovo
Esporta vecchi URL e nuovi URL in un file a due colonne prima del lancio. Mantieni i percorsi normalizzati: un solo host, un solo protocollo, uno stile coerente per lo slash finale e nessuna catena di redirect. Per esempio:
old_path,new_url
/old-product.html,https://www.example.com/new-product
/old-category/,https://www.example.com/new-category/
/3-shoes,https://www.example.com/shoesApache (.htaccess)
Inserisci le regole prima delle regole dispatcher di PrestaShop, sopra il blocco # Dispatcher e dopo RewriteEngine On. Se PrestaShop gestisce la richiesta per primo, il tuo redirect potrebbe non essere mai eseguito.
RewriteEngine On
# Exact old-to-new page mapping
Redirect 301 /old-product.html https://www.example.com/new-product
Redirect 301 /old-category/ https://www.example.com/new-category/
# Pattern redirect
RewriteRule ^old-brand/(.*)$ /brand/$1 [R=301,L]
# Strip ID-prefixed category URLs, e.g. /3-shoes -> /shoes
RewriteRule ^([0-9]+)-(.+)$ /$2 [R=301,L]Nginx
Per pochi redirect, usa location esatte. Per una mappa di migrazione grande, usa map nel contesto http e una singola regola return nel blocco server.
# http {} context
map $request_uri $redirect_target {
default 0;
/old-product.html /new-product;
/old-category/ /new-category/;
/3-shoes /shoes;
}
# server {} context
if ($redirect_target) {
return 301 https://www.example.com$redirect_target;
}Per migliaia di URL, genera le regole dal CSV oppure usa un modulo redirect che consenta allo staff di gestire le mappature dal back office. Testa prima del go-live con curl -I https://www.example.com/old-product.html; vuoi 301 Moved Permanently e il Location finale. Usa curl -IL per individuare catene.
Errori comuni
- Catene di redirect: punta i vecchi URL direttamente alla destinazione finale.
- Loop infiniti: controlla www/non-www, HTTP/HTTPS e regole di modulo in conflitto.
- Sensibilità a maiuscole/minuscole: i percorsi Linux sono case-sensitive; usa
[NC]nelle regole rewrite Apache solo quando vuoi intenzionalmente un match case-insensitive. - Query string eliminate: conservale solo quando portano stato utile; rimuovi i parametri di tracking.
- Durata troppo breve: mantieni i redirect di migrazione importanti per almeno un anno, spesso più a lungo per pagine di alto valore.
Per la migrazione completa, inclusi file, database, tema e redirect, segui la nostra guida alla migrazione PrestaShop.
Questa risposta ti è stata utile?
Hai ancora domande?
Non trovi quello che cerchi? Inviaci la tua domanda e ti risponderemo.