Un redirect è l’istruzione che indirizza automaticamente un browser o un motore di ricerca da un URL a un altro, senza richiedere alcuna azione da parte di chi naviga. Serve a mantenere raggiungibile un contenuto quando l’indirizzo originale cambia, viene rimosso o sostituito. Riguarda cambi di dominio, ristrutturazioni di URL, pagine eliminate e passaggi da HTTP a HTTPS. Motori di ricerca e strumenti di analisi verificano il comportamento dei redirect ogni volta che esaminano la struttura di un sito e la sua indicizzazione.
Redirect: significato e funzione
Un redirect è un meccanismo che trasferisce automaticamente una richiesta da un URL a un altro, comunicando al browser o al crawler dove trovare la risorsa richiesta. Il termine reindirizzamento indica la stessa operazione ed è usato in modo equivalente nella documentazione tecnica italiana.
Quando un utente digita un vecchio URL o clicca su un link che punta a una pagina spostata, il server risponde con uno dei codici HTTP 3xx e indica, nell’header Location, l’indirizzo della nuova risorsa. Il browser interpreta questa risposta e richiede automaticamente la nuova pagina, senza che chi naviga se ne accorga.
La stessa logica vale per Google Search e per gli altri crawler: quando incontrano un redirect, aggiornano il proprio indice associando i segnali della pagina originale alla destinazione, con modalità diverse a seconda che il redirect sia permanente o temporaneo.
Tipi di redirect
I redirect si distinguono in base alla permanenza dello spostamento e al comportamento richiesto al client. La distinzione principale separa i redirect lato server, basati su un codice di stato HTTP restituito dal server, dai redirect lato client, gestiti dal browser tramite HTML o JavaScript.
- Redirect 301: spostamento permanente, usato quando il vecchio URL viene sostituito in modo definitivo.
- Redirect 302: spostamento temporaneo, usato quando l’URL originale deve restare il riferimento principale.
- Redirect 307: spostamento temporaneo che mantiene il metodo della richiesta originale.
- Redirect 308: spostamento permanente che mantiene il metodo della richiesta originale.
- Meta refresh e redirect JavaScript: reindirizzamento gestito dal browser dopo il caricamento della pagina, senza un codice di stato server dedicato.
Redirect 301 permanente
Il redirect 301 comunica che una pagina si è spostata in modo definitivo in un nuovo indirizzo. Il browser che riceve una risposta con codice 301 Moved Permanently richiede automaticamente la risorsa al nuovo indirizzo indicato nell’header Location, mentre i motori di ricerca attribuiscono alla nuova pagina i link puntati verso quella originale.
Si usa il 301 quando un contenuto non tornerà più al vecchio indirizzo: cambio di dominio, unione di due pagine simili in una sola, correzione permanente della struttura degli URL. Il browser tende a memorizzare questo tipo di redirect nella cache per lungo tempo, quindi va applicato solo a spostamenti definitivi.
Redirect 302 temporaneo
Il redirect 302 indica che una risorsa si trova momentaneamente a un indirizzo diverso, mentre l’URL originale resta il riferimento per le richieste successive. La definizione tecnica del codice 302 Found segnala anche che alcuni client convertono una richiesta POST in GET durante il passaggio, comportamento che il codice 307 evita mantenendo il metodo originale.
Il 302 è adatto a promozioni con scadenza, pagine di manutenzione, test A/B o instradamenti basati su geolocalizzazione e dispositivo. Impiegarlo per uno spostamento definitivo è un errore comune: l’URL originale resta indicizzato più a lungo e il trasferimento dei segnali verso la nuova pagina avviene in modo più lento e meno prevedibile.
Redirect 307 e 308
I redirect 307 e 308 sono codici HTTP più specifici rispetto a 302 e 301, perché indicano al client di mantenere il metodo della richiesta originale durante il reindirizzamento. Questo significa che una richiesta POST, PUT o DELETE non viene trasformata in GET nel passaggio verso il nuovo URL.
Il redirect 307 indica uno spostamento temporaneo e viene usato quando la risorsa si trova provvisoriamente a un altro indirizzo, ma il metodo della richiesta deve restare invariato. Il redirect 308 indica invece uno spostamento permanente con la stessa logica: l’URL cambia in modo definitivo, ma il client deve conservare il metodo originale della richiesta.
Nel lavoro SEO quotidiano 301 e 302 restano i redirect più comuni, soprattutto per pagine informative, articoli, categorie e migrazioni di URL. 307 e 308 sono più frequenti in contesti tecnici, applicazioni web, API, form e flussi in cui il metodo della richiesta non deve essere modificato. Per questo vanno conosciuti, ma usati solo quando il comportamento della richiesta lo richiede.
Meta refresh e redirect JavaScript
Il meta refresh è un reindirizzamento gestito dal browser tramite un tag HTML che imposta un ritardo prima del caricamento di una nuova pagina, senza passare da un codice di stato HTTP restituito dal server. Un meta refresh impostato senza ritardo viene interpretato dai motori di ricerca come equivalente a un redirect permanente, mentre un ritardo più lungo viene trattato come temporaneo.
Il redirect tramite JavaScript funziona in modo simile, spostando l’utente su una nuova pagina dopo l’esecuzione dello script nel browser. Entrambe le soluzioni restano opzioni di riserva, da adottare quando non è possibile intervenire lato server, perché richiedono che il browser esegua correttamente il codice della pagina prima di attivare il passaggio.
Quando usare un redirect
Un redirect si applica ogni volta che l’indirizzo di una risorsa cambia in modo permanente o temporaneo e occorre evitare che utenti e crawler raggiungano un indirizzo non più valido. I casi più frequenti riguardano migrazioni di dominio, modifiche alla struttura degli URL e gestione delle pagine eliminate.
Cambio dominio, migrazione sito e modifica URL
Durante un cambio dominio ogni vecchio URL deve puntare, con un redirect 301, al corrispondente nuovo indirizzo, evitando di reindirizzare genericamente tutte le pagine verso la homepage. Una migrazione sito richiede una mappa 1 a 1 tra vecchi e nuovi URL, con particolare attenzione alle pagine con più traffico e più link in ingresso.
Anche una modifica URL, come la rimozione di parametri o la correzione di una categoria nel percorso, richiede un redirect permanente dal vecchio percorso al nuovo. In assenza di questo passaggio, i link esterni già pubblicati continuano a puntare a un indirizzo non più raggiungibile.
Pagine eliminate, errori 404 e contenuti sostitutivi
Quando una pagina viene eliminata senza un contenuto equivalente a cui rimandare, la scelta corretta è restituire un errore 404 e non forzare un redirect verso una pagina non pertinente. Un reindirizzamento verso contenuti che non rispondono alla stessa domanda dell’utente può essere trattato dai motori di ricerca come un errore soft 404, con conseguente perdita di indicizzazione per l’URL di destinazione.
Se invece esiste un contenuto sostitutivo pertinente, per esempio una categoria di prodotto aggiornata al posto di una scheda rimossa, un redirect 301 verso quella pagina mantiene continuità per l’utente e per i link già acquisiti nel tempo.
Redirect e canonical: quando usare l’uno o l’altro
Redirect e tag canonical non hanno la stessa funzione. Il redirect sposta utenti e crawler da un URL a un altro, mentre il canonical indica ai motori di ricerca quale versione di una pagina deve essere considerata principale quando più URL restano accessibili.
Il redirect va usato quando il vecchio indirizzo non deve più essere raggiungibile. Il canonical è più adatto quando due pagine simili devono restare online, per esempio varianti con parametri, filtri, ordinamenti o versioni quasi duplicate dello stesso contenuto. Usare un canonical al posto di un redirect su una pagina rimossa può lasciare attivi URL inutili, mentre usare un redirect dove serve solo consolidare segnali può eliminare percorsi ancora validi per utenti e crawler.
Redirect e SEO
I redirect influenzano direttamente indicizzazione e ranking perché determinano quale URL i motori di ricerca considerano la versione di riferimento di un contenuto. Un redirect impostato con il codice sbagliato può mantenere indicizzato un URL superato oppure rallentare il trasferimento dei segnali verso la nuova pagina.
Indicizzazione, ranking e trasferimento del valore della pagina
Per modificare l’indirizzo di una pagina già indicizzata è preferibile impostare un redirect permanente lato server, che garantisce a utenti e crawler di raggiungere la versione corretta della pagina, mentre un reindirizzamento temporaneo mantiene indicizzato l’URL originale nei risultati di ricerca.
Il valore accumulato da una pagina, spesso indicato come link equity, viene trasferito verso la nuova destinazione quando il redirect è permanente e diretto, cioè senza passaggi intermedi. Una catena di redirect allunga i tempi di risposta e rende meno efficiente il trasferimento dei segnali.
Un redirect loop, in cui due URL si rimandano l’uno all’altro senza mai raggiungere una pagina finale, blocca completamente l’accesso alla risorsa e consuma crawl budget senza restituire alcun contenuto utilizzabile. Il crawl budget è la quantità di risorse che un motore di ricerca dedica alla scansione di un sito in un dato periodo, e catene o loop di redirect lo riducono a scapito delle pagine da indicizzare.
| Aspetto | Redirect 301 | Redirect 302 |
|---|---|---|
| Natura dello spostamento | Permanente | Temporaneo |
| URL indicizzato da Google | Nuovo URL | URL originale |
| Caching nel browser | Aggressivo e prolungato | Limitato o assente |
| Uso tipico | Migrazione, cambio dominio, unione pagine | Manutenzione, test, promozioni a scadenza |
Come impostare un redirect
Un redirect si può impostare a livello di server, tramite file di configurazione o pannello di hosting, oppure tramite gli strumenti offerti da un CMS. La scelta dipende dall’accesso disponibile alla configurazione del server e dal numero di redirect da gestire nel tempo.
Redirect lato server con .htaccess, Apache e Nginx
Su server Apache le regole di reindirizzamento si scrivono nel file .htaccess o nella configurazione del virtual host, richiamando il modulo mod_rewrite per la riscrittura degli URL, che interpreta pattern ed espressioni regolari prima di restituire il nuovo indirizzo. Per redirect con un solo vecchio percorso e una sola destinazione, è sufficiente una direttiva di reindirizzamento diretto senza ricorrere a espressioni regolari.
Nel file .htaccess l’ordine delle regole è determinante: i redirect più specifici dovrebbero essere inseriti prima di quelli più generici. Una regola ampia, posizionata troppo in alto, può intercettare una richiesta prima che venga valutata la regola corretta per un singolo URL, mandando browser e crawler verso una destinazione non prevista. Questo può generare reindirizzamenti incoerenti, catene inutili o pagine finali poco pertinenti, con effetti negativi su scansione, indicizzazione e continuità del traffico organico. Per questo, nelle migrazioni e nelle ristrutturazioni di URL, conviene ordinare le regole partendo dai percorsi puntuali e solo dopo inserire redirect di cartelle, sezioni o pattern più estesi.
Su server Nginx la stessa funzione è affidata al modulo ngx_http_rewrite, che restituisce un redirect quando la stringa di sostituzione inizia con lo schema http o https, altrimenti applica un reindirizzamento temporaneo con codice 302 di default. Le regole si scrivono direttamente nel file di configurazione del server, dentro i blocchi server o location, e richiedono il riavvio o il ricaricamento del servizio per essere attive.
Redirect tramite CMS, WordPress e pannelli hosting
Su WordPress i redirect si gestiscono spesso tramite plugin dedicati, che permettono di associare vecchio e nuovo URL da un’interfaccia grafica senza modificare direttamente il file .htaccess. Alcuni costruttori di pagine, come Elementor, offrono opzioni di reindirizzamento integrate per singole pagine o template, utili quando si sostituisce una landing page mantenendo lo stesso percorso concettuale.
Molti pannelli di controllo hosting, tra cui cPanel, mettono a disposizione una sezione dedicata ai redirect che genera automaticamente le regole nel file di configurazione del server. Questa modalità riduce il rischio di errori di sintassi rispetto alla modifica manuale dei file, pur restando meno flessibile per regole con più condizioni.
Errori da evitare nella gestione dei redirect
La gestione dei redirect genera problemi ricorrenti quando le regole vengono aggiunte nel tempo senza una revisione complessiva. I casi più frequenti riguardano catene troppo lunghe, destinazioni non equivalenti e redirect dimenticati dopo una migrazione.
- Catene di redirect con più passaggi tra il vecchio URL e la destinazione finale.
- Redirect loop tra due o più URL che si rimandano a vicenda senza risoluzione.
- Uso del 302 per spostamenti permanenti, con conseguente doppia indicizzazione temporanea.
- Reindirizzamento generico di tutte le pagine eliminate verso la homepage.
- Mancato aggiornamento dei link interni dopo l’introduzione di un nuovo redirect.
Un altro errore riguarda i redirect impostati su dominio ma non su sottodominio, o viceversa, con la conseguenza che parte del traffico continua a raggiungere una versione non aggiornata del sito. Verificare la coerenza tra www e non www, tra HTTP e HTTPS, evita che coesistano più varianti indicizzate dello stesso contenuto.
Come controllare se un redirect funziona
Per verificare un redirect si controlla il codice di stato HTTP restituito dal server e l’indirizzo indicato nell’header Location, confrontandolo con la destinazione prevista. Gli strumenti per sviluppatori integrati nel browser mostrano questa informazione nella scheda dedicata alla rete, insieme al numero di passaggi intermedi eventualmente presenti.
Un controllo corretto verifica anche l’assenza di catene: idealmente un solo passaggio separa il vecchio URL dalla pagina finale. Se compaiono due o più redirect in sequenza, conviene aggiornare la regola in modo che punti direttamente all’indirizzo definitivo, riducendo tempi di risposta e dispersione di segnali.
Dopo una migrazione o una modifica estesa degli URL, il controllo non dovrebbe fermarsi al singolo redirect. Conviene aggiornare sitemap XML, menu, breadcrumb, link interni e collegamenti presenti nei contenuti, in modo che il sito punti direttamente alle nuove destinazioni. I redirect devono proteggere il passaggio dai vecchi URL ai nuovi, non sostituire una struttura interna aggiornata.
Va inoltre verificato che il redirect resti attivo nel tempo, soprattutto dopo aggiornamenti del CMS o modifiche alla configurazione del server, perché una regola rimossa per errore riporta immediatamente l’URL a restituire un errore 404 su un indirizzo che aveva già acquisito link e traffico.


