Un reindirizzamento (o Redirect) 301 è un trasferimento permanente di un URL, paragonabile a un servizio di inoltro della posta. Tecnicamente, ciò significa che il server web risponde a una richiesta con il codice di stato 301 Moved Permanently e fornisce al client (come un browser web o Googlebot) il nuovo indirizzo (URL) della risorsa richiesta.
- Il funzionamento di un reindirizzamento 301 in parole semplici
- Che cosa succede durante un reindirizzamento 301?
- Quando si usa un reindirizzamento 301?
- SEO e 301: nessuna perdita di PageRank
- Implementazione tecnica: come impostare correttamente un reindirizzamento 301
- Reindirizzamento con PHP
- Reindirizzamento con Apache (.htaccess)
- Reindirizzamento con Nginx
- Reindirizzamenti massivi con Espressioni Regolari (Regex)
- Soluzioni tramite Plugin WordPress
- 301 vs. 302: perché il tipo di reindirizzamento è fondamentale
- Analizzare i reindirizzamenti 301 con SISTRIX
- Usa i redirect 301 con un obiettivo chiaro
- Tipici redirect 301 con Apache (.htaccess)
- 1. Reindirizzare il dominio senza www a www
- 2. Reindirizzare da www a non-www
- 3. Reindirizzare da HTTP a HTTPS
- 4.. Reindirizzare una singola pagina a una nuova URL
- 5. Reindirizzare un'intera directory
- 6. Reindirizzare URL con parametri (es. vecchi link di campagne)
- 7. Reindirizzare tutte le pagine di un vecchio dominio a un nuovo dominio
- 8. Rimuovere o forzare lo slash finale (trailing slash)
Il reindirizzamento avviene in modo automatico. Gli utenti vengono dirottati al nuovo indirizzo senza visualizzare alcun messaggio di errore (al contrario del tipico “404 – Pagina non trovata”). Per i visitatori, questo passaggio è quindi pressoché invisibile: l’unico cambiamento riscontrabile è il nuovo indirizzo che appare nella barra del browser.
Anche i motori di ricerca seguono il reindirizzamento e memorizzano il nuovo indirizzo. In questo modo la visibilità rimane invariata e la maggior parte dell’autorità SEO accumulata nel tempo viene trasferita al nuovo URL.
Il funzionamento di un reindirizzamento 301 in parole semplici
Nel seguente grafico abbiamo riportato i passaggi tecnici che illustrano quello che accade durante un reindirizzamento 301.

Che cosa succede durante un reindirizzamento 301?
I processi alla base di un reindirizzamento sono standardizzati. Supponiamo che Googlebot voglia richiamare l’URL dominio.it/abc.html. Il server web riconosce che questo indirizzo non è più valido e reindirizza la richiesta, tramite il codice di stato 301, verso dominio.it/xyz.html. Il bot comprende che il contenuto si trova ora permanentemente a questo nuovo indirizzo e, in futuro, indicizzerà solo l’URL di destinazione. Allo stesso modo, gli utenti che richiamano abc.html arrivano automaticamente a xyz.html, senza interruzioni o messaggi di errore.
Quando si usa un reindirizzamento 301?
Un reindirizzamento 301 è opportuno ogni volta che i contenuti si trovano stabilmente in una nuova posizione. Ciò riguarda principalmente:
- Modifiche alla struttura degli URL: ad esempio dopo la migrazione di un sito.
- Trasferimento di un sito: quando si sposta l’intero progetto su un nuovo dominio.
- Fusione di contenuti: quando si uniscono più pagine web in una sola.
- Scelta del dominio preferito: per stabilire una versione univoca (con www o senza www).
- Prevenzione del Duplicate Content: per garantire una struttura degli URL uniforme ed evitare contenuti duplicati.
Un esempio classico è il reindirizzamento da dominio.it a www.dominio.it, essenziale per evitare duplicazioni tecniche e SEO. È fondamentale che questi reindirizzamenti siano impostati correttamente, affinché funzionino senza intoppi sia per gli utenti che per i motori di ricerca.
SEO e 301: nessuna perdita di PageRank
In passato, i reindirizzamenti 301 erano considerati rischiosi poiché si sospettava che una parte della “Forza dei link” andasse perduta nel passaggio. Oggi questa preoccupazione è infondata: Google ha confermato più volte (da ultimo attraverso Gary Illyes) che i reindirizzamenti 301 non perdono più PageRank. Sono quindi uno strumento affidabile per trasferire valori SEO, come i backlink esterni e la rilevanza interna, verso i nuovi URL.
Una pagina che si posiziona bene su Google continuerà ad essere reperibile nei risultati di ricerca con il nuovo URL, purché il reindirizzamento sia impostato correttamente.
Google raccomanda espressamente l’uso dei reindirizzamenti 301 quando gli URL vengono modificati in modo permanente. Solo così è possibile garantire che sia gli utenti sia Googlebot raggiungano la pagina corretta, senza perdite in termini di SEO.
Implementazione tecnica: come impostare correttamente un reindirizzamento 301
Reindirizzamento con PHP
Se il reindirizzamento deve avvenire a livello di singolo file, può essere implementato direttamente nel codice PHP. Importante: il documento sorgente deve essere un file con estensione .php.
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://www.dominio.it/nuovo-nome.php");
header("Connection: close");
?>
Reindirizzamento con Apache (.htaccess)
Per i siti su server Apache, il reindirizzamento viene solitamente gestito tramite il file .htaccess. È necessario il modulo mod_rewrite, che di norma è già attivo.
RewriteEngine On
RewriteRule ^vecchia-cartella/documento.html https://www.dominio.it/documento.html [R=301]
Questa regola dirotta le richieste da dominio.it/vecchia-cartella/documento.html a dominio.it/documento.html restituendo correttamente lo status code 301.
Reindirizzamento con Nginx
Sui server Nginx, la configurazione avviene direttamente nel file nginx.conf.
rewrite ^/vecchia-cartella/documento.html $scheme://$host/documento.html permanent;
Anche in questo caso, il termine permanent garantisce l’utilizzo del codice di stato 301.
Reindirizzamenti massivi con Espressioni Regolari (Regex)
Per reindirizzare intere directory, si possono utilizzare le espressioni regolari. Ecco un esempio per Nginx:
rewrite ^/vecchia-cartella/(.*)$ $scheme://$host/$1 permanent;
In questo modo, tutti i contenuti all’interno di /vecchia-cartella/ vengono spostati correttamente nella nuova posizione mantenendo il resto del percorso.
Soluzioni tramite Plugin WordPress
Per chi utilizza WordPress, esistono plugin come Rank Math o Redirection che permettono di impostare i reindirizzamenti tramite un’interfaccia grafica, senza competenze tecniche avanzate.
Attenzione: l’uso dei plugin aumenta la dipendenza da strumenti terzi e può comportare rischi di sicurezza o rallentamenti. Per reindirizzamenti che riguardano l’intero sito (come il passaggio a HTTPS), è sempre preferibile una soluzione a livello server (.htaccess o Nginx).
301 vs. 302: perché il tipo di reindirizzamento è fondamentale
Un reindirizzamento 301 segnala che una pagina è stata spostata in modo permanente. Questa informazione può essere memorizzata (nella cache) dai browser e dai motori di ricerca. Al contrario, il reindirizzamento 302 è pensato solo per spostamenti temporanei e non viene salvato nella cache.
Per Google, questa differenza è cruciale:
- Con un reindirizzamento 301, la pagina di destinazione viene indicizzata e mostrata nei risultati di ricerca.
- Con un reindirizzamento 302, solitamente viene mantenuta nell’indice l’URL originale, anche se il contenuto visualizzato proviene dalla pagina di destinazione.
Chi utilizza accidentalmente un codice 302 per un trasferimento definitivo rischia problemi d’indicizzazione e risultati di ricerca confusi. Google ha confermato che, se un Redirect 302 rimane attivo per molto tempo, potrebbe iniziare a interpretarlo come un 301, ma è meglio non fare affidamento su questo automatismo e impostare correttamente il codice fin dall’inizio.
Analizzare i reindirizzamenti 301 con SISTRIX
SISTRIX permette di verificare in modo affidabile se un reindirizzamento 301 funziona correttamente dal punto di vista tecnico. All’interno di un progetto, nella sezione “Codici di stato”, vengono visualizzati tutti gli URL scansionati con il relativo codice di stato HTTP.
Questo ti permette di identificare rapidamente se:
- I reindirizzamenti funzionano come desiderato
- Esistono catene di reindirizzamenti (Redirect Chains) errate o superflue
- Sono stati utilizzati codici errati (ad esempio un 302 invece di un 301)
Inoltre, attraverso l’analisi dei livelli di click, puoi capire in quali sezioni del sito si trovano i reindirizzamenti. Questo è l’ideale per individuare redirect inutili o per controllare la “profondità” dei reindirizzamenti, ottimizzando così il tempo di scansione dei motori di ricerca e la velocità di caricamento per l’utente.

Scopri subito come sfruttare SISTRIX per analizzare i codici di stato e i reindirizzamenti 301! Sette giorni per provare l’intero tool senza alcun costo nascosto, né disdetta necessaria: testa subito SISTRIX gratuitamente.
Usa i redirect 301 con un obiettivo chiaro
Quando i contenuti si spostano in modo permanente, il reindirizzamento 301 è l’unica soluzione possibile: esso garantisce infatti non solo l’esperienza utente, ma anche le tue prestazioni SEO. Reindirizzamenti impostati in modo errato possono invece causare contenuti duplicati, perdite di ranking o risultati di ricerca errati.
Assicurati inoltre di avere un collegamento interno uniforme (evitando un mix tra www e non-www) e utilizza coerentemente percorsi assoluti.
Tipici redirect 301 con Apache (.htaccess)
Ecco alcuni reindirizzamenti comuni che, se necessario, possono essere inseriti nel file .htaccess.
1. Reindirizzare il dominio senza www a www
Reindirizza tutte le richieste da dominio.it a www.dominio.it.
RewriteEngine On RewriteCond %{HTTP_HOST} ^dominio.it$ [NC] RewriteRule ^(.*)$ https://www.dominio.it/$1 [R=301,L]2. Reindirizzare da www a non-www
Variante inversa: reindirizzamento da www.dominio.it a dominio.it.
RewriteEngine On RewriteCond %{HTTP_HOST} ^www.dominio.it$ [NC] RewriteRule ^(.*)$ https://dominio.it/$1 [R=301,L]La scelta tra la variante 1 o 2 è indifferente per Google, l'importante è utilizzare solo una di queste due opzioni.3. Reindirizzare da HTTP a HTTPS
Reindirizza tutte le richieste senza SSL alla versione HTTPS.
RewriteEngine On RewriteCond %{HTTPS} off RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]Le URL senza https vengono contrassegnate come non sicure da molti browser e oggi non dovrebbero essere fondamentalmente più utilizzate.4.. Reindirizzare una singola pagina a una nuova URL
Se è cambiato solo un file:
Redirect 301 /vecchia-pagina https://www.dominio.it/nuova-paginaImportante: gli URL sono semplicemente indirizzi, non hanno un’influenza diretta sui ranking. Non è quindi necessario cambiare un URL che si posiziona bene, anche se il contenuto della pagina cambia.
5. Reindirizzare un’intera directory
Reindirizza tutti i file di una directory in una nuova directory:
RedirectMatch 301 ^/vecchiadirectory/(.*)$ https://www.dominio.it/nuovadirectory/$1Questa modifica deve essere implementata con particolare cautela, poiché può interessare molti URL.
6. Reindirizzare URL con parametri (es. vecchi link di campagne)
Reindirizzamento in presenza di determinati parametri nell’URL:
RewriteEngine On RewriteCond %{QUERY_STRING} ^id=123$ RewriteRule ^pagina.php$ https://www.dominio.it/nuova-pagina [R=301,L]7. Reindirizzare tutte le pagine di un vecchio dominio a un nuovo dominio
In caso di cambio di dominio:
RewriteEngine On RewriteCond %{HTTP_HOST} ^vecchio-dominio.it$ [NC] RewriteRule ^(.*)$ https://www.google.com/search?q=https://www.nuovo-dominio.it/$1 [R=301,L]Se un dominio cambia, tutte le URL devono essere reindirizzate con questo comando. I cambi di dominio dovrebbero però essere sempre ben motivati, poiché comportano altri problemi.
8. Rimuovere o forzare lo slash finale (trailing slash)
Per rimuovere lo slash alla fine:
RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)/$ /$1 [R=301,L]Per forzare lo slash:
RewriteEngine On RewriteCond %{REQUEST\_FILENAME} \!-f RewriteCond %{REQUEST\_URI} \!/$ RewriteRule ^(.*)$ https://www.dominio.it/$1/ [R=301,L]Attenzione: questi redirect aiutano a evitare pagine di errore, a ridurre i contenuti duplicati e a creare strutture di URL conformi alla SEO. Ogni modifica dovrebbe essere testata per evitare errori che potrebbero influire negativamente sulle prestazioni del sito.
Prova SISTRIX gratis
- Account di prova gratuito per 7 giorni
- Nessun obbligo, né disdetta necessaria
- Onboarding personalizzato con esperti