Come specificare un URL canonico con rel="canonical" e altri metodi

Per specificare un URL canonico per le pagine duplicate o molto simili alla Ricerca Google, puoi indicare la preferenza utilizzando diversi metodi; questi sono indicati in ordine, in base a quanto possono influire sulla canonicalizzazione:

Tieni presente che questi metodi possono essere sovrapposti e, di conseguenza, diventare più efficaci se combinati. Ciò significa che l'utilizzo di due o più metodi aumenterà la possibilità che l'URL canonico preferito venga visualizzato nei risultati di ricerca.

Ti invitiamo a utilizzare questi metodi, anche se nessuno è obbligatorio; è probabile che il sito funzioni bene senza specificare una preferenza canonica. Questo perché, se non specifichi un URL canonico, Google identificherà quale versione dell'URL è obiettivamente la migliore da mostrare agli utenti nella Ricerca.

Motivi per specificare un URL canonico

In genere, non è fondamentale specificare una preferenza canonica per gli URL, ma esistono diversi motivi per cui conviene informare esplicitamente Google di una pagina canonica in un insieme di pagine duplicate o simili:

  • Per specificare l'URL da mostrare nei risultati di ricerca. Potresti preferire che gli utenti raggiungano la tua pagina relativa agli abiti verdi tramite https://www.example.com/dresses/green/greendress.html anziché https://example.com/dresses/cocktail?gclid=ABCD.
  • Per raggruppare gli indicatori per pagine simili o duplicate. Consente ai motori di ricerca di raggruppare gli indicatori in loro possesso relativi ai singoli URL (ad esempio link che rimandano agli URL) in un unico URL preferito. Ciò significa che gli indicatori provenienti da altri siti verso https://example.com/dresses/cocktail?gclid=ABCD vengono raggruppati con i link a https://www.example.com/dresses/green/greendress.html, se quest'ultimo diventa canonico.
  • Per semplificare il monitoraggio delle metriche relative a un contenuto. La presenza di URL diversi rende più complicato ricevere metriche raggruppate per un contenuto specifico.
  • Per evitare di impiegare tempo a eseguire la scansione di pagine duplicate. Vuoi che Googlebot ottenga il massimo dal tuo sito, quindi è meglio che dedichi del tempo a a scansionare le pagine nuove (o aggiornate) del tuo sito, invece che a scansionare le versioni duplicate dello stesso contenuto.

Best practice

Per tutti i metodi di canonicalizzazione, segui queste best practice:

  • Non utilizzare il file robots.txt per la canonicalizzazione.
  • Non utilizzare lo strumento per le rimozioni di URL per la canonicalizzazione, dato che nasconde tutte le versioni di un URL dalla Ricerca.
  • Non specificare URL diversi come canonici per una stessa pagina utilizzando diverse tecniche di canonicalizzazione (ad esempio, non specificare un URL in una Sitemap e un altro URL per la stessa pagina utilizzando rel="canonical").
  • Non specificare un frammento di URL come canonico dato che in genere Google non supporta i frammenti di URL.
  • Non è consigliabile utilizzare noindex per impedire la selezione di una pagina canonica all'interno di un singolo sito, perché la pagina verrà completamente bloccata dalla Ricerca. Le annotazioni link rel="canonical" sono la soluzione preferita.
  • Se utilizzi gli elementi hreflang, assicurati di specificare una pagina canonica nella stessa lingua o nella migliore lingua sostitutiva, se una pagina canonica non esiste per la stessa lingua.
  • Quando inserisci link all'interno del tuo sito, rimanda all'URL canonico anziché a un URL duplicato. Utilizzare sempre lo stesso URL per i link aiuta Google a comprendere qual è la tua preferenza per l'URL canonico.

Confronto dei metodi di canonicalizzazione

La seguente tabella mette a confronto i diversi metodi di canonicalizzazione, evidenziandone i punti forti e deboli relativamente alla manutenzione e all'efficacia in scenari diversi.

Metodo e descrizione
Elemento rel="canonical" link

Aggiungi nel codice di tutte le pagine duplicate un elemento <link> che indirizza alla pagina canonica.

Vantaggi:
  • Può mappare un numero infinito di pagine duplicate.
Svantaggi:
  • Può complicare la gestione della mappatura su siti di grandi dimensioni o siti in cui gli URL subiscono frequenti modifiche.
  • Funziona solo per le pagine HTML, non per i file (ad esempio i PDF). In questi casi, puoi utilizzare l'intestazione HTTP rel="canonical".
Intestazione HTTP rel="canonical"

Invia un'intestazione rel="canonical" nella risposta di una pagina.

Vantaggi:
  • Non aumenta la dimensione della pagina.
  • Può mappare un numero infinito di pagine duplicate.
Svantaggi:
  • Può complicare la gestione della mappatura su siti di grandi dimensioni o siti in cui gli URL subiscono frequenti modifiche.
Sitemap

Designa le pagine canoniche in una Sitemap.

Vantaggi:

  • Facile da implementare e gestire, soprattutto su siti di grandi dimensioni.

Svantaggi:

  • Google deve comunque identificare le pagine duplicate per tutte le pagine canoniche dichiarate nella Sitemap.
  • Indicatore meno efficace per Google rispetto alla tecnica di mappatura con rel="canonical".
Reindirizzamenti Utilizza i reindirizzamenti per indicare a Googlebot che un URL reindirizzato è una versione migliore dell'URL prestabilito. Adotta questo metodo solo quando rendi obsoleta una pagina duplicata.
Variante AMP Se una delle varianti è una pagina AMP, segui le linee guida delle pagine AMP per designare la pagina canonica e la variante AMP.

Google supporta le annotazioni link rel canonical esplicite come descritto nel documento RFC 6596. Le annotazioni rel="canonical" che suggeriscono versioni alternative di una pagina vengono ignorate; nello specifico, le annotazioni rel="canonical" con attributi hreflang, lang, media e type non vengono utilizzati per la canonicalizzazione. Utilizza invece le annotazioni link appropriate per specificare versioni alternative di una pagina; ad esempio, link rel="alternate" hreflang per le annotazioni per lingua e paese.

Puoi fornire le annotazioni link rel="canonical" in due modi:

Ti consigliamo di scegliere uno di questi e di attenerti alla tua scelta; sebbene sia supportato, l'utilizzo di entrambi i metodi contemporaneamente è più soggetto a errori (ad esempio, puoi fornire un URL nell'intestazione HTTP e un altro nell'elemento link rel="canonical").

Un elemento link rel="canonical" (noto anche come elemento canonico) è un elemento utilizzato nella sezione head del codice HTML per indicare che un'altra pagina è e rappresentativa dei contenuti.

Ipotizza di voler designare https://example.com/dresses/green-dresses come URL canonico, anche se il suo contenuto è accessibile da diversi URL. Designa questo URL come canonico con i seguenti passaggi:

  1. Aggiungi un elemento <link> con l'attributo rel="canonical" alla sezione <head> delle pagine duplicate che indirizzi a una pagina canonica. Ad esempio:
    <html>
    <head>
    <title>Explore the world of dresses</title>
    <link rel="canonical" href="https://example.com/dresses/green-dresses" />
    <!-- other elements -->
    </head>
    <!-- rest of the HTML -->
  2. Se la pagina canonica ha una variante mobile su un URL a parte, aggiungi un elemento link rel="alternate", indirizzando alla versione mobile della pagina:
    <html>
    <head>
    <title>Explore the world of dresses</title>
    <link rel="alternate" media="only screen and (max-width: 640px)"  href="https://m.example.com/dresses/green-dresses">
    <link rel="canonical" href="https://example.com/dresses/green-dresses" />
    <!-- other elements -->
    </head>
    <!-- rest of the HTML -->
  3. Aggiungi eventuali hreflang o altri elementi appropriati per la pagina.

Utilizza percorsi assoluti anziché percorsi relativi con l'elemento link rel="canonical". Anche se i percorsi relativi sono supportati da Google, possono causare problemi a lungo termine (ad esempio, se consenti involontariamente la scansione del tuo sito di test) e pertanto ne sconsigliamo l'utilizzo.

Esempio corretto: https://www.example.com/dresses/green/greendress.html

Esempio errato: /dresses/green/greendress.html

link element rel="canonical" è accettato solo se compare nella sezione <head> dell'HTML, pertanto assicurati che almeno la sezione <head> sia composta da codice HTML valido.

Se utilizzi JavaScript per aggiungere l'elemento link rel="canonical", assicurati di inserire correttamente l'elemento link canonico.

L'intestazione HTTP rel="canonical"

Se puoi modificare la configurazione del server, puoi utilizzare un'intestazione della risposta HTTP link con un attributo target rel="canonical" come definito dallo standard RFC5988 anziché un elemento HTML per indicare l'URL canonico per un documento supportato dalla Ricerca, tra cui documenti non HTML come file PDF.

Google supporta questo metodo solo per i risultati di ricerca web.

Se pubblichi contenuti in molti formati file, ad esempio PDF o Microsoft Word, ognuno sul proprio URL, puoi restituire un'intestazione HTTP rel="canonical" per indicare a Googlebot qual è l'URL canonico per i contenuti non HTML. Ad esempio, per indicare che la versione PDF della versione .docx deve essere canonica, potresti aggiungere questa intestazione HTTP per la versione .docx dei contenuti:

HTTP/1.1 200 OK
Content-Length: 19
...
Link: <https://www.example.com/downloads/white-paper.pdf>; rel="canonical"
...

Come per l'elemento link rel="canonical", utilizza URL assoluti nell'intestazione HTTP rel="canonical" e, come per RFC2616, utilizza solo virgolette doppie attorno all'URL.

Utilizzare una Sitemap

Scegli un URL canonico per ognuna delle tue pagine e inviali in una Sitemap. Tutte le pagine elencate in una Sitemap vengono suggerite come canoniche, ma sarà Google a decidere quali, se presenti, siano duplicate, in base alla somiglianza dei contenuti.

Fornire gli URL canonici preferiti nelle Sitemap è un modo semplice per definire le pagine canoniche per un sito di grandi dimensioni. Le Sitemap sono un modo utile per indicare a Google quali pagine ritieni più importanti sul tuo sito.

Utilizzare i reindirizzamenti

Utilizza questo metodo se vuoi eliminare pagine duplicate esistenti. Tutti i metodi di reindirizzamento (reindirizzamenti 301 e 302, meta-refresh, reindirizzamenti JavaScript) hanno lo stesso effetto sulla Ricerca Google, ma i motori di ricerca hanno bisogno di tempo prima di notare che i vari metodi di reindirizzamento possono essere diversi.

Per un effetto più rapido, utilizza i reindirizzamenti HTTP 3xx (noti anche come reindirizzamenti lato server).

Supponiamo che sia possibile accedere alla tua pagina in diversi modi:

  • https://example.com/home
  • https://home.example.com
  • https://www.example.com

Scegli uno di questi URL come URL canonico e utilizza i reindirizzamenti per inviare il traffico dagli altri URL all'URL preferito.

Altri indicatori

Oltre ai metodi forniti in modo esplicito, Google utilizza anche un insieme di indicatori di canonicalizzazione generalmente basati sulla configurazione dei siti: la preferenza di HTTPS rispetto ad HTTP e l'utilizzo di URL nei cluster hreflang.

Preferire HTTPS a HTTP per gli URL canonici

Per le pagine canoniche, Google preferisce le pagine HTTPS alle pagine HTTP equivalenti, ad eccezione dei casi in cui esistano problemi o segnali contrastanti come i seguenti:

  • Il certificato SSL della pagina HTTPS non è valido.
  • La pagina HTTPS contiene dipendenze non protette (diverse dalle immagini).
  • La pagina HTTPS reindirizza gli utenti a o tramite una pagina HTTP.
  • La pagina HTTPS ha un link rel="canonical" alla pagina HTTP.

Anche se i nostri sistemi preferiscono, per impostazione predefinita, le pagine HTTPS alle pagine HTTP, puoi assicurarti che venga applicata questa preferenza svolgendo una delle seguenti azioni:

  • Aggiungi reindirizzamenti dalla pagina HTTP alla pagina HTTPS.
  • Aggiungi un link rel="canonical" che rimanda dalla pagina HTTP alla pagina HTTPS.
  • Implementa HSTS.

Per evitare che Google imposti erroneamente come canonica la pagina HTTP, evita le seguenti prassi:

  • Evita i certificati TLS/SSL non validi e i reindirizzamenti da HTTPS a HTTP perché portano Google a preferire HTTP in modo netto. L'implementazione di HSTS non può sostituire questa netta preferenza.
  • Non includere nella Sitemap o nelle annotazioni hreflang la versione HTTP delle pagine invece della versione HTTPS.
  • Evita di implementare il certificato SSL/TLS per la variante host errata. Ad esempio, example.com che fornisce il certificato per subdomain.example.com. Il certificato deve corrispondere all'URL del sito completo oppure essere un certificato con caratteri jolly che sia possibile utilizzare per diversi sottodomini di un dominio.

Preferire gli URL nei cluster hreflang

Per agevolare le attività di localizzazione dei siti, a fini di canonicalizzazione Google preferisce URL che fanno parte di cluster hreflang. Ad esempio, se https://example.com/de-de/cats e https://example.com/de-ch/cats puntano in modo reciproco l'una all'altra con le annotazioni hreflang ma non a https://example.com/de-at/cats, le pagine relative a de-de e de-ch verranno preferite come canoniche invece della pagina /de-at/ che non compare nel cluster hreflang.

Scopri di più sulla risoluzione dei problemi di canonicalizzazione.