SEO Redirects - 301/302/404 manager. SEO Redirects gestisce redirect 301/302 (semplici, con wildcard o regex sicure), monitora gli errori 404 e li trasforma in redirect con un clic, crea automaticamente 301 quando cambia uno slug, importa/esporta CSV e rileva URL duplicati. Ogni destinazione è protetta dall'open redirect. Nessun codice, nessuna modifica al tema.
SEO Redirects gestisce redirect 301/302 (semplici, con wildcard o regex sicure), monitora gli errori 404 e li trasforma in redirect con un clic, crea automaticamente 301 quando cambia uno slug, importa/esporta CSV e rileva URL duplicati. Ogni destinazione è protetta dall'open redirect. Nessun codice, nessuna modifica al tema.
1. Installazione
- Nel back office vai su Moduli → Gestione moduli → Carica un modulo e seleziona lo ZIP del modulo.
- A installazione completata, clicca Configura. Si apre un breve pannello con un pulsante Vai alla configurazione che porta alla pagina di configurazione completa.

.local, .test, localhost) sono sempre ammessi. Quando esce una nuova versione viene segnalata dentro al modulo.Se al posto della conferma leggi "Upload failed", PrestaShop può aver disattivato il modulo senza dirtelo: le impostazioni e i dati restano al loro posto. Come si aggiorna un modulo, e cosa fare se dice "Upload failed".
2. Configurazione: passo per passo
Il modulo è organizzato in schede: Redirect, Monitor 404, Import / Export, Pretty URL helper e Impostazioni. Parti da Impostazioni per accendere il motore, poi aggiungi o importa i tuoi redirect.
- Redirect: elenca, filtra e gestisci in blocco le regole, oppure aggiungine una con sorgente, destinazione, tipo 301/302, matching opzionale con wildcard/regex e opzione "accoda query string". Le destinazioni devono essere interne o in whitelist (protezione open redirect).
- Monitor 404: i veri 404 che passano da PrestaShop vengono registrati qui (senza file statici e rumore da bot, quando gli interruttori relativi sono accesi; l’elenco ha un tetto per negozio e le voci vecchie vengono pulite dopo un certo numero di giorni); clicca Crea 301 per trasformarlo in un redirect in un passaggio.
- Import / Export: esporta tutte le regole in CSV (separato da punto e virgola) o importa un CSV con le colonne
source, target, type, is_regex, keep_querystring, activein qualsiasi ordine. - Pretty URL helper: evidenzia URL che sembrano duplicati (stesso percorso che differisce solo per maiuscole/minuscole o slash finale) così puoi redirigere la variante verso la forma canonica.
Aggiungi un redirect
Dalla scheda Redirect, clicca Aggiungi un redirect per aprire il form della regola.
- Percorso o pattern di origine: il percorso in ingresso, es.
/old-page. Con Pattern matching attivo puoi usare le wildcard*e?o una regex delimitata. - Destinazione: un percorso interno (che inizia con
/) o un URL sul tuo shop o su un host in whitelist. Le destinazioni esterne non in whitelist vengono rifiutate (protezione open-redirect). - Tipo di redirect: 301 Permanente o 302 Temporaneo.
- Ambito negozio multistore, su un'installazione multistore il form mostra un selettore Ambito negozio: limita il redirect a un solo negozio, oppure applicalo a Tutti i negozi.
- Pattern matching e Accoda la query string originale alla destinazione: interruttori opzionali per regola.

Impostazioni interruttore generale
La scheda Impostazioni raggruppa l'interruttore del motore, il comportamento di matching, la sicurezza open-redirect e la gestione dei dati.
- Abilita il motore di redirect: interruttore generale. Quando è spento, non viene servito alcun redirect e nulla viene registrato.
- Registra errori 404: registra gli URL che finiscono sulla pagina 404 così puoi trasformarli in redirect.
- Crea automaticamente 301 al cambio slug: quando cambia lo slug di un prodotto, categoria o pagina CMS, crea automaticamente un 301 dal vecchio URL al nuovo.
- Ignora la query string nel matching: confronta il percorso a prescindere dai parametri
?a=b(puoi comunque accodare la query string originale per regola). - Matching case-insensitive e Normalizza gli slash finali: trattano
/Pagina,/paginae/pagina/come la stessa sorgente. - Host esterni consentiti: hostname separati da virgola verso cui un redirect può puntare oltre ai domini del tuo shop. Lascia vuoto per consentire solo redirect interni, è la protezione open-redirect; ogni altra destinazione esterna viene rifiutata.
- Limite dimensione log 404: il numero massimo di URL 404 distinti conservati.
- Elimina i dati alla disinstallazione: se attivo, disinstallando vengono cancellate tutte le regole e il log 404. Tienilo spento per conservare i redirect tra una reinstallazione e l'altra.

3. Quando usare 301, 302, 404 o 410
Un 404 risponde alla domanda “c’è qualcosa a questo indirizzo” con un no, oggi, senza promesse su domani. Un 301 risponde a una domanda diversa: “quello che cercavi esiste ancora, ma si è spostato per sempre qui”, e trasferisce nel tempo i segnali di posizionamento verso il nuovo indirizzo. Sbagliare in una direzione butta via link e storico di posizionamento; sbagliare nell’altra (un 301 verso una pagina qualsiasi solo per evitare il 404) insegna al motore di ricerca che la vostra mappa dei redirect non è affidabile.
La scelta in breve
- Il contenuto si è spostato ed esiste ancora: un 301, verso la pagina più pertinente possibile, non verso la home come soluzione generica.
- Il contenuto è temporaneamente non disponibile ma tornerà allo stesso indirizzo: un 302, non un 301, così il motore di ricerca tiene indicizzato l’originale e ripassa più tardi.
- Il contenuto è sparito senza un sostituto diretto: un 404, oppure un 410 se sapete con certezza che non tornerà mai più (i motori di ricerca in genere tolgono quegli indirizzi dall’indice più in fretta).
- Il contenuto non è mai esistito a quell’indirizzo: un 404 semplice, senza altro da fare.
Il soft 404 da evitare
Un soft 404 è una pagina che dice a un visitatore “prodotto non trovato” nel testo, mentre il server risponde comunque 200 OK. I motori di ricerca notano la discrepanza e trattano comunque l’indirizzo come un errore, ma nel frattempo occupa uno slot di indicizzazione normale invece di essere gestito come l’errore che è. Il core di PrestaShop risponde correttamente 404 quando un prodotto non esiste: il soft 404 compare di solito quando un tema o un modulo intercetta la pagina e mostra un messaggio “non trovato” con codice 200. Se il testo di una pagina dice che manca qualcosa, anche il codice di stato deve dirlo.
Il crawl budget è traffico vero, con i numeri del nostro negozio
I motori di ricerca, e sempre di più i crawler delle intelligenze artificiali, assegnano un budget approssimativo di richieste al giorno a ogni dominio: ogni richiesta spesa su una catena di redirect o un 404 vecchio è una richiesta non spesa su una pagina che conta. Non è astratto. Sul nostro negozio, prima di una pulizia di routine, il filtro che classifica le visite era fermo a una lista di firme robot del 2010: registrava 43.478 “visite” al giorno da robot, contro circa 300 persone reali, e i dati di tracciamento erano arrivati a 1,4 GB prima che la pulizia li riportasse a 24 MB. Separatamente, un solo crawler (quello di Meta) faceva 38.000 richieste in un giorno, circa l’80% di tutto il traffico ricevuto dal server, finché non è stata aggiunta una regola mirata.
Il 410: quando è la scelta giusta, e quando fa danno
Un 410 va sempre dichiarato apposta: comunica “qui non ci sarà mai più niente”, non solo “qui non c’è niente adesso”. Usarlo quando questa certezza non c’è è l’errore più costoso dei quattro codici. Due casi tipici: un prodotto fuori stock ma destinato a tornare (qui il 410 scoraggia il motore dal ricontrollare l’indirizzo proprio quando vorreste che tornasse a farlo: meglio un 404, o un 302 verso una pagina di preavviso), e una regola troppo larga su un pattern con wildcard o su una condizione di query string, che può chiudere con un errore permanente traffico legittimo che condivide solo parte del pattern.
Come risponde un 410 fatto bene
Nel modulo, scegliendo il tipo 410 la destinazione non serve e viene ignorata. La risposta scatta il più presto possibile nel ciclo della richiesta, prima che l’applicazione costruisca il tema o recuperi il prodotto dal database, e comprende tre elementi spesso dimenticati quando un 410 viene scritto “a mano”: lo stato HTTP 410 Gone vero (non un 200 con un testo che dice “non disponibile”), un’intestazione X-Robots-Tag: noindex, e un corpo pagina minimo tradotto nella lingua del visitatore.
Un caso reale: un crawler intrappolato in un parametro avvelenato
Sul nostro negozio un crawler (quello di Meta) girava in tondo su indirizzi /login?back=... che contenevano ancora, nel valore del parametro, il vecchio dominio del sito: oltre 36.000 richieste in una notte, più del 90% di tutto il traffico, ognuna servita con una risposta 200 e un rendering completo, cioè con lo stesso costo di CPU di una richiesta vera. Una singola regola 410 con condizione sulla query string ha risolto il caso senza toccare il traffico legittimo: la regola scatta solo quando il parametro back contiene il vecchio dominio, non su qualunque richiesta a /login. Verificato su tre versioni diverse di PrestaShop: /login?back=http://vecchio-dominio.it/x e /login?back=https://vecchio-dominio.it/login rispondono 410, mentre /login?back=/mio-account (traffico legittimo) continua a rispondere 200, invariato.
Le catene di redirect: la tassa silenziosa
Un singolo 301 costa quasi niente. Una catena di tre o quattro passaggi costringe ogni crawler e ogni visitatore a fare altrettante richieste per arrivare a una sola pagina, e i motori di ricerca seguono solo un numero limitato di passaggi prima di arrendersi. Ogni volta che un indirizzo cambia di nuovo, reindirizzate l’originale direttamente verso la destinazione finale attuale, senza aggiungere un altro passaggio sopra l’ultimo: appiattire le catene appena si trovano è una delle pulizie più utili su un redirect map costruito nel tempo.
4. Verifica che funzioni
3. Verifica che funzioni
- In Impostazioni, assicurati che "Abilita il motore di redirect" sia attivo, poi aggiungi un redirect (es.
/old-page→/new-page) e visita il vecchio URL, dovresti arrivare al nuovo. - Visita un URL inesistente: con "Registra errori 404" attivo compare nel Monitor 404, dove Crea 301 precompila il form della regola con quell'URL.
- Esporta le regole in CSV, poi reimporta il file, il report di import mostra quante regole sono state importate o saltate.
- Prova un redirect verso un host esterno non in whitelist: viene rifiutato (protezione open-redirect).
5. Domande frequenti
Qual è la differenza tra 301 e 302?
Il 301 è un redirect permanente (trasferisce il valore SEO al nuovo URL); il 302 è temporaneo. Usa il 301 per le pagine spostate e il 302 solo per cambi temporanei.
Un redirect può puntare ovunque?
No. Le destinazioni devono essere un percorso interno o un URL sul tuo shop o su un host in whitelist. Questa protezione open-redirect vale per regole manuali, import CSV e regole salvate.
Funzionano wildcard e regex?
Sì. Attiva "Pattern matching" su una regola per usare le wildcard * e ? o una regex delimitata; nella destinazione puoi usare i back-reference sicuri $1..$9. Le regex non sicure vengono rifiutate.
Rallenta il negozio?
No. Il matching è leggero ed entra in gioco solo quando serve, ed è compatibile con qualsiasi tema tramite hook standard.
