Come Fare i Redirects per Ottimizzare un Sito SEO

Come fare i Redirects

I redirects sono molto utili per ottimizzare un sito SEO. Inoltre, ti consentirà di capire come vengono indicizzate le pagine web e rilevare degli errori che potrebbero compromettere il posizionamento sui motori motori di ricerca del tuo sito web.

I Robot dei motori di ricerca trovano i codici di stato HTTP mentre compiono il crawling.
Esistono circa un centinaio di codici di stato HTTP, alcuni di questi (1XX e 2XX) sono poco rilevanti per la SEO, mentre alcuni codici 3XX (redirects), 4XX e 5XX, rivestono un ruolo importante per ottimizzare un sito web.

Argomenti trattati:

  1. Come eseguire correttamente i redirects 301, 302 e 307.
  2. Come impostare i redirects con il file .htaccess.
  3. Come reindirizzare una singola URL.
  4. Come fare i redirects tutti tranne.
  5. Redirect per cambiare una directory.
  6. Redirect dal vecchio al nuovo dominio.
  7. Redirects penalizzanti per la SEO.

Classificazione dei Codici di Stato HTTP

Le cinque classi dei codici di stato sono:

  • 1XX: codici informativi
  • 2XX: codici di successo
  • 3XX: codici di reindirizzamento
  • 4XX: codici di errore del client
  • 5XX: codici di errore del server

Come eseguire correttamente i Redirects sui Siti Web

Oggi, grazie ai CMS, è diventato molto facile gestire i redirects.
Il metodo più comodo e veloce è installando un plug-in, blocco o modulo a seconda del CMS che stai utilizzando, e il gioco è fatto!
Se non hai un CMS o non vuoi aggiungere dei componenti che rallenterebbero il tuo sito web, puoi modificare il file .htaccess.

Cos’è il file .htaccess

Il file .htaccess è un file di configurazione utilizzato dal Web Server Apache che dà delle precise informazioni al server per organizzare le funzionalità del sito web.
Più avanti troverai le informazioni per come impostare i redirects con il file .htaccess, ora ti spiego la differenza dei redirects più importanti per ottimizzare un sito SEO.

Redirects 3XX

301 Redirect permanente

Questo reindirizzamento indica che la risorsa è stata modificata in un’altra posizione e che dovrebbe utilizzare il nuovo URL per richieste future.

Quando i motori di ricerca vedono un redirect 301, passano il ranking della vecchia pagina a quella nuova.

Attenzione, Se dopo qualche mese cambi idea e decidi di rimuovere il redirect 301, il tuo vecchio URL potrebbe non essere più classificato.
Anche se scambi i reindirizzamenti, non ti aiuterà a riportare la vecchia pagina alla sua precedente posizione di classifica.

Quando avvii un reindirizzamento permanente, non è più possibile ripristinarlo rimuovendo il reindirizzamento.
– Perché una volta che Google rileva il reindirizzamento, passerà il PageRank alla nuova pagina e cambierà l’URL nella SERP per utilizzare quello nuovo.

302 e 307: Redirects temporanei

Il 302 e il 307 indicano che la risorsa viene temporaneamente spostata.
Praticamente il client dovrebbe seguire un reindirizzamento, ma i motori di ricerca non dovrebbero aggiornare i propri link nelle SERP alla nuova pagina temporanea.

Con questo tipo di reindirizzamenti, il PageRank non viene passato dalla risorsa originale a quella nuova, come avviene con il 301.

In quasi tutti i casi, i reindirizzamenti 302 e 307 vengono  trattati allo stesso modo, ma un codice 302 non significa necessariamente che il client debba seguire un reindirizzamento.

Spendo due parole su questo punto perchè è importante.

I client moderni molto probabilmente seguiranno la nuova destinazione, il problema potrebbe sorgere con alcuni vecchi client che potrebbero rimanere erroneamente sullo stesso URL.

Il redirect 307 garantisce che il metodo di richiesta non verrà modificato. Mentre il 302, sui vecchi client, potrebbe causare un comportamento imprevisto.

Quindi, il redirect 307 è più comodo da usare per i reindirizzamenti di routine. Mentre il 302 conviene utilizzarlo quando stai migrando un grande sito web con tantissime pagine da un vecchio dominio ad uno nuovo o anche da HTTP a HTTPS.

Poi imposti il reindirizzamento 302 su 301 permanente.

Nota Tecnica

Per la maggior parte delle attività di reindirizzamento, è consigliato utilizzare i codici 301 (reindirizzamento permanente) e 307 (reindirizzamento temporaneo), a seconda del tipo di modifica che si sta implementando sul sito web.
In entrambi i casi, la sintassi dei reindirizzamenti non cambia.

Redirects con il file .htaccess

Come impostare i redirects con .htaccess

Puoi gestire il reindirizzamento tramite i file di configurazione del server .htaccess o puoi aggiungere dei componenti per modificare delle funzionalità del tuo sito web se hai un CMS.

Il mio consiglio è di usare il file .htaccess, ma se hai poca dimestichezza con i codici, utilizza i componenti che preferisci per il tuo tipo di CMS.

Con il file .htaccess la sintassi da usare e quella di seguito riportata:

Opzions + FollowSymlinks
RewriteEngine on
RedirectMatch 301 ^/oldfolder / /newfolder /

Assicurati che il file .htaccess abbia queste due righe:

Opzions + FollowSymlinks
RewriteEngine on

Aggiungi il comando
RedirectMatch 301 ^ (inizio della stringa)
/oldfolder / /newfolder /

Aggiunto il codice nel file .htaccess non ti resta che spedirlo con FTP.

Nota tecnica

Assicurati che sul tuo server i moduli mod_rewrite e mod_alias (entrambi responsabili della gestione dei redirects) siano abilitati.

Consiglio

Prima di effettuare qualsiasi operazione sul file .htaccess esegui sempre un backup completo del tuo sito web.

Come reindirizzare una singola URL

Questo tipo di redirect è quello più utilizzato per eliminare delle pagine o modificare delle URL delle pagine.
Supponiamo di cambiare l’URL da vecchia-pagina a nuova-pagina. La regola di reindirizzamento è:

RewriteRule ^old-page(/? | /.*)$ /new-page/ [R=301,L]

oppure

RedirectMatch 301 ^/old-page(/?|/.*)$ /newpage/

Il primo codice utilizza il modulo mod_rewrite di Apache, mentre il secondo utilizza mod_alias. Puoi utilizzare entrambi i metodi.

Note sul codice

I simboli ^ e $ indicano rispettivamente l’inizio e la fine dell’url, in questo esempio stiamo impostando la regola che l’url con ”/ oldpage” e tutto ciò che segue (/?|/.*) deve essere reindirizzato a /newpage/.

Volendo Potremmo anche usare (. *)
^ /oldpage(. *)

In questo caso, però, se hai un’altra pagina con un URL simile potresti reindirizzare anche quella pagina.
Se per esempio hai una pagina che si chiama /oldpage-ottimizzazione-seo/, verrà reindirizzata.

Se invece utilizzi la seguente sintassi:

Redirect 301 /old-page/ /new-page/

In quest’ultimo caso reindirizzerai qualsiasi variazione dell’URL della pagina ad uno nuovo.

Redirect tutti tranne

In questo caso immagina di avere un sito web con molte URL, come:
/categoria/sottocategoria-1/, /categoria/sottocategoria-2/, /categoria/sottocategoria-generale/.

Se vuoi unire tutte le sottocategorie in /categoria/sottocategoria-generale/.

In questo esempio la sintassi da usare è:

RewriteCond %{REQUEST_URI} !/categoria/sottecategoria-generale/
RewriteCond %{REQUEST_FILENAME}! -F
RewriteRule ^(categoria/). /categoria/sottocategoria-generale/ [R=301,L]

Note tecniche

Puoi impostare la regola “! -F” che significa ignora qualsiasi file come immagini, file CSS o javascript.
Altrimenti, se hai delle risorse come “/categoria/image.jpg“, verrà reindirizzata a “/sottocategoria-generale/” e causerà un’interruzione dell’immagine.

In pratica gli stiamo dicendo di reindirizzare tutto in /categoria/ tranne se è /categoria /sottocategoria-generale/.

[R=301] indica il redirect 301.
L indica che dopo questa riscrittura non deve essere eseguita nessun altra riscrittura.

Redirect per cambiare una directory

Se devi spostare tutto dalla vecchia directory ad una nuova, puoi usare la seguente regola:

RewriteRule ^old-directory$ /new-directory/ [R=301,NC,L]
RewriteRule ^old-directory /(.*)$ /new-directory/$1 [R=301,NC,L]

In questo caso ho usato $1 per dire al server che dovrebbe ricordare tutto nell’URL che segue /old-directory/.

Quindi, se vuoi cambiare old-directory/sottodirectory, dovrà essere reindirizzata a /new-directory/sottodirectory/.

NC indica che l’url può essere case insensitive, in pratica anche se scrivo NeW-diRectoRY con caratteri maiuscoli o minuscoli, verrà ugualmente reindirizzata.

Reindirizzamento dal vecchio al nuovo dominio

Questo è uno dei redirects più utilizzati per cambiare dominio.
La regola seguente reindirizza old-domain.com a new-domain.com:

RewriteCond %{HTTP_HOST} ^old-domain.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.old-domain.com$
RewriteRule (.*)$ http://www.new-domain.com/$1 [R=301,L]

Raccomandazione

Utilizza due casi: uno senza “www” e l’altro “con www”, perché qualsiasi pagina per motivi storici potrebbe avere collegamenti in entrata ad entrambe le versioni.

Redirects Errati

Redirects penalizzanti per la SEO

Reindirizzamento di tutte le pagine 404 alla home page

Google pretende che il contenuto della pagina reindirizzata sia equivalente alla vecchia pagina. Altrimenti tale reindirizzamento potrebbe essere considerato come soft 404 e perderai il ranking di quella pagina.

Reindirizzamenti della pagina mobile errati

Se disponi di URL diversi per i siti web desktop e per i mobile (ad esempio, “tuosito.com” per desktop e “m.tuosito.com” per i dispositivi mobili), assicurati di reindirizzare gli utenti alla pagina appropriata della versione mobile.

Corretto: “tuosito.com/seo/” a “m.tuosito.com/seo/”
Sbagliato: “tuosito.com/seo/” a “m.tuosito.com”

Se non hai una versione mobile per una pagina, puoi evitare di reindirizzare alla versione mobile e mantenerli sulla pagina desktop.

Buon lavoro

Create your account