Reindirizzamenti e la Ricerca Google

Il reindirizzamento degli URL è la pratica che consente di mappare un URL esistente in uno diverso, indicando in modo efficace ai visitatori e alla Ricerca Google che una pagina ha una nuova posizione. I reindirizzamenti sono particolarmente utili nelle seguenti circostanze:

  • Hai spostato il tuo sito in un nuovo dominio e vuoi rendere la transizione più semplice possibile.
  • Gli utenti accedono al tuo sito tramite diversi URL. Ad esempio, se la tua home page può essere raggiunta in molti modi, come http://example.com/home, http://home.example.com o http://www.example.com, è opportuno impostare uno di questi URL come destinazione preferita (canonica) e utilizzare i reindirizzamenti per trasferire il traffico dagli altri URL all'URL preferito.
  • Vuoi unire due siti web e assicurarti che i link agli URL precedenti vengano reindirizzati alle pagine corrette.
  • Hai rimosso una pagina e vuoi reindirizzare gli utenti a una nuova pagina.

Panoramica dei tipi di reindirizzamento

Anche se in genere gli utenti non sono in grado di distinguere le diverse tipologie di reindirizzamenti, la Ricerca Google li utilizza come un indicatore forte o debole del fatto che la destinazione del reindirizzamento dovrebbe essere canonica. La scelta di un reindirizzamento dipende da quanto a lungo prevedi che tale reindirizzamento venga applicato e dalla pagina che vuoi che venga mostrata nei risultati della Ricerca Google:

  • Reindirizzamenti permanenti: mostrano la nuova destinazione del reindirizzamento nei risultati di ricerca.
  • Reindirizzamenti temporanei: mostrano la pagina di origine nei risultati di ricerca.

La seguente tabella spiega i vari modi in cui puoi impostare reindirizzamenti permanenti e temporanei, ordinati in base alla probabilità che Google riesca a interpretarli correttamente (ad esempio, un reindirizzamento lato server ha maggiori probabilità di essere interpretato correttamente da parte di Google). Scegli il tipo di reindirizzamento più adatto alla tua situazione e al tuo sito:

Tipi di reindirizzamento
Permanente

Googlebot segue il reindirizzamento e la pipeline di indicizzazione lo utilizza come un indicatore forte del fatto che la destinazione di reindirizzamento dovrebbe essere canonica.

HTTP 301 (moved permanently)

Configura i reindirizzamenti lato server.

HTTP 308 (moved permanently)
meta refresh (0 secondi)

Configura i reindirizzamenti meta refresh.

Aggiornamento HTTP (0 secondi)
location JavaScript

Configura i reindirizzamenti JavaScript.

Reindirizzamento Crypto

Scopri di più sui reindirizzamenti crypto.

Temporaneo

Googlebot segue il reindirizzamento e la pipeline di indicizzazione lo utilizza come un indicatore debole del fatto che la destinazione di reindirizzamento dovrebbe essere canonica.

HTTP 302 (found)

Configura i reindirizzamenti lato server.

HTTP 303 (see other)
HTTP 307 (temporary redirect)
meta refresh (> 0 secondi)

Configura i reindirizzamenti meta refresh.

HTTP refresh (> 0 secondi)

Reindirizzamenti lato server

Impostare i reindirizzamenti lato server richiede l'accesso ai file di configurazione del server (ad esempio il file .htaccess su Apache) o la configurazione delle intestazioni di reindirizzamento con script lato server (ad esempio PHP). Puoi creare reindirizzamenti sia permanenti che temporanei sul lato server.

Reindirizzamenti lato server permanenti

Se devi modificare l'URL di una pagina come viene mostrato nei risultati del motore di ricerca, ti consigliamo di utilizzare un reindirizzamento lato server permanente ogni volta che è possibile. Questo è il modo migliore per assicurarti che la Ricerca Google e gli utenti vengano indirizzati alla pagina corretta. I codici di stato 301 e 308 indicano che una pagina è stata spostata definitivamente in una nuova posizione.

Reindirizzamenti lato server temporanei

Se vuoi solo indirizzare temporaneamente gli utenti a un'altra pagina, utilizza un reindirizzamento temporaneo. Ciò garantisce che Google mantenga il vecchio URL nei suoi risultati per un periodo di tempo più lungo. Ad esempio, se un servizio offerto dal tuo sito è temporaneamente non disponibile, puoi impostare un reindirizzamento temporaneo per indirizzare gli utenti a una pagina che fornisca loro spiegazioni, senza compromettere l'URL originale nei risultati di ricerca.

Implementare i reindirizzamenti lato server

L'implementazione dei reindirizzamenti lato server dipende dall'ambiente di hosting e server oppure dal linguaggio di scripting del backend del tuo sito.

Per impostare un reindirizzamento permanente con PHP, utilizza la funzione header(). Prima di mostrare qualsiasi elemento sullo schermo, devi impostare le intestazioni:

header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.com/newurl');
exit();

Analogamente, ecco un esempio di configurazione di un reindirizzamento temporaneo con PHP:

header('HTTP/1.1 302 Found');
header('Location: http://www.example.com/newurl');
exit();

Se hai accesso ai file di configurazione del server web, potresti essere in grado di scrivere autonomamente le regole di reindirizzamento. Segui le guide del tuo server web:

  • Apache: tra le risorse di Apache, consulta il tutorial su .htaccess, la guida sulla riscrittura degli URL e la documentazione su mod_alias. Ad esempio, puoi utilizzare mod_alias per configurare la forma di reindirizzamenti più semplice:

    # Permanent redirect:
    Redirect permanent "/old" "http://example.com/new"
    
    # Temporary redirect:
    Redirect temp "/two-old" "http://example.com/two-new"

    Per i reindirizzamenti più complessi, utilizza mod_rewrite. Ad esempio:

    RewriteEngine on
    # redirect the service page to a new page with a permanent redirect
    RewriteRule   "^/service$"  "/about/service"  [R=301]
    
    # redirect the service page to a new page with a temporary redirect
    RewriteRule   "^/service$"  "/about/service"  [R]
  • NGINX: leggi l'articolo sulla creazione di regole di riscrittura di NGINX sul relativo blog. Come con Apache, hai più opzioni per creare reindirizzamenti. Ad esempio:

    location = /service {
      # for a permanent redirect
      return 301 $scheme://example.com/about/service
    
      # for a temporary redirect
      return 302 $scheme://example.com/about/service
    }

    Per reindirizzamenti più complessi, utilizza l'istruzione rewrite:

    location = /service {
      # for a permanent redirect
      rewrite service?name=$1 ^service/offline/([a-z]+)/?$ permanent;
    
      # for a temporary redirect
      rewrite service?name=$1 ^service/offline/([a-z]+)/?$ redirect;
    }
  • Per tutti gli altri server web, contatta il gestore o l'hoster del server oppure cerca le guide sul tuo motore di ricerca preferito (ad esempio, cerca "reindirizzamenti LiteSpeed").

meta refresh e il suo equivalente HTTP

Se sulla tua piattaforma non è possibile implementare i reindirizzamenti lato server, i reindirizzamenti meta refresh potrebbero essere un'alternativa valida. Google distingue tra due tipi di reindirizzamenti meta refresh:

  • Reindirizzamento meta refresh istantaneo: viene attivato non appena la pagina viene caricata in un browser. La Ricerca Google interpreta i reindirizzamenti meta refresh istantanei come permanenti.
  • Reindirizzamento meta refresh ritardato: viene attivato solo dopo un numero arbitrario di secondi impostato dal proprietario del sito. La Ricerca Google interpreta i reindirizzamenti meta refresh ritardati come temporanei.

Inserisci il reindirizzamento meta refresh nella sezione head del codice HTML o nell'intestazione HTTP con codice lato server. Ad esempio, ecco un reindirizzamento meta refresh istantaneo nella sezione head del codice HTML:

<!doctype html>
<html>
  <head>
  <meta http-equiv="refresh" content="0; url=https://example.com/newlocation" />
  <title>Example title</title>
  <!--...-->

Di seguito è riportato un esempio di equivalente dell'intestazione HTTP, che puoi inserire tramite script lato server:

HTTP/1.1 200 OK
Refresh: 0; url=http://www.example.com/newlocation
...

Per creare un reindirizzamento ritardato, che viene interpretato come temporaneo da parte di Google, imposta l'attributo content sul numero di secondi di ritardo da applicare al reindirizzamento:

<!doctype html>
<html>
  <head>
  <meta http-equiv="refresh" content="5; url=https://example.com/newlocation" />
  <title>Example title</title>
  <!--...-->

Reindirizzamenti location JavaScript

La Ricerca Google interpreta ed esegue JavaScript utilizzando il servizio di rendering web al termine della scansione dell'URL.

Per configurare un reindirizzamento JavaScript, imposta la proprietà location con l'URL di destinazione del reindirizzamento in un blocco script nell'intestazione HTML. Ad esempio:

<!doctype html>
<html>
  <head>
    <script>
      window.location.href('http://www.example.com/newlocation')
    </script>
    <title>Example title</title>
    <!--...-->

Reindirizzamenti Crypto

Se non riesci a implementare nessuno dei metodi di reindirizzamento tradizionali, dovresti comunque cercare di comunicare agli utenti che la pagina o i suoi contenuti sono stati spostati. Il modo più semplice per farlo è aggiungere un link che rimanda alla nuova pagina accompagnato da una breve spiegazione. Ad esempio:

<a href="https://newsite.example.com/newpage.html">We moved! Find the content on our new site!</a>

Ciò consente agli utenti di trovare il tuo nuovo sito e Google potrebbe considerarlo come un reindirizzamento crypto.

Versioni alternative di un URL

Quando reindirizzi un URL, Google tiene traccia sia dell'origine del reindirizzamento (il vecchio URL) che della destinazione del reindirizzamento (il nuovo URL). Uno degli URL sarà quello canonico; la scelta dipende da alcuni indicatori, ad esempio se il reindirizzamento era temporaneo o permanente. L'altro URL diventa un nome alternativo dell'URL canonico. I nomi alternativi potrebbero essere visualizzati nei risultati di ricerca quando la query di un utente suggerisce che il vecchio URL potrebbe essere ritenuto più attendibile.

Ad esempio, se il sito è stato spostato su un nuovo nome di dominio, è molto probabile che Google continuerà occasionalmente a mostrare nei risultati i vecchi URL, anche se i nuovi URL sono già indicizzati. Questo è normale e, man mano che gli utenti si abitueranno al nuovo nome di dominio, i nomi alternativi scompariranno senza che sia necessario alcun intervento da parte tua.