Configurare redirect 301 in PrestaShop dopo una migrazione

Domanda pubblicata Risposta pubblicata 1436 visualizzazioni

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.

MPR SEO Migration Wizard per redirect 301
Migration Wizard - importa i vecchi URL, mappali e crea redirect 301.

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/shoes

Apache (.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.

Caricamento...
Torna su