Venerdì 14 marzo 2025
Con il file robots.txt, i proprietari di siti hanno un modo semplice per controllare quali parti di un sito web sono accessibili dai crawler.
Per aiutare i proprietari di siti a specificare ulteriormente in che modo i motori di ricerca e i crawler web possono utilizzare le loro pagine, la community coinvolta nello sviluppo degli standard web ha creato i meta
tag robots nel 1996, solo pochi mesi dopo la proposta dei meta
tag per HTML (e anche prima della fondazione di Google). In seguito, sono state aggiunte le intestazioni della risposta HTTP X-Robots-Tag
.
Queste istruzioni vengono inviate insieme a un URL, pertanto i crawler possono tenerle in considerazione solo se non è vietata la scansione dell'URL tramite il file robots.txt. Insieme, formano il protocollo di esclusione robot (REP, Robots Exclusion Protocol).
Panoramica dei meta
tag robots
I meta tag (o elementi) sono un modo per includere metadati leggibili dai computer.
I meta
tag robots sono un "tipo" di meta
tag e si applicano ai crawler, inclusi i crawler dei motori di ricerca; indicano se l'indicizzazione dei contenuti è bloccata e se i link nella pagina non devono essere seguiti per la scansione. È facile fornire queste informazioni direttamente nella pagina con i meta
tag robots.
Un protocollo di esclusione robot per qualsiasi URL
Per offrire lo stesso livello di controllo ai contenuti non HTML, è stata creata l'intestazione della risposta HTTP "X-Robots-Tag
". Anche queste intestazioni HTTP sono considerate parte del REP.
L'intestazione supporta gli stessi valori del meta
tag robots e può essere aggiunta a qualsiasi contenuto pubblicato online.
Oltre all'HTML, Google la supporta per contenuti come PDF, file di documenti e persino immagini.
La maggior parte di questi formati di file non dispone di un meccanismo equivalente ai meta
tag, pertanto un'intestazione della risposta HTTP è utile.
Iniziare a utilizzare i meta
tag robots e le intestazioni
La sintassi è semplice ed estensibile. In genere, le regole vengono implementate dallo sviluppatore web o tramite un sistema di gestione dei contenuti (CMS), in cui i proprietari di siti potrebbero avere caselle di controllo o menu a discesa per selezionare le proprie preferenze. Questi controlli possono rivolgersi a un crawler specifico, ad esempio Googlebot, oppure, omettendo un nome specifico, a tutti i crawler che supportano questi valori.
Ad esempio, le seguenti regole indicano a tutti i crawler di non utilizzare per l'indicizzazione la pagina associata:
- Sotto forma di
meta
tag HTML in una pagina web:<meta name="robots" content="noindex">
Esaminare i
meta
tag o le intestazioni della risposta esistenti è un po' più complicato e richiede l'esame diretto dei contenuti o delle intestazioni della pagina. Potete visualizzare imeta
tag HTML su qualsiasi pagina esaminando il codice sorgente della pagina nel browser o utilizzando gli strumenti per sviluppatori di Chrome per ispezionare la pagina.
- Sotto forma di intestazione della risposta HTTP:
X-Robots-Tag: noindex
Potete controllare le intestazioni della risposta HTTP per singoli URL con gli strumenti per sviluppatori di Chrome, nel riquadro Network.
Altri esempi di ciò che potete fare:
Non mostrare uno snippet per questa pagina o questo documento. |
Nell'intestazione HTTP:
X-Robots-Tag: nosnippet <meta name="robots" content="nosnippet"> |
Non indicizzare questa pagina in Questi controlli specificano esplicitamente un solo crawler. |
X-Robots-Tag: examplebot-news: noindex <meta name="examplebot-news" content="noindex"> |
Tieni presente che vengono applicate le istruzioni valide più restrittive, quindi per |
X-Robots-Tag: examplebot: nosnippet X-Robots-Tag: nofollow <meta name="examplebot" content="nosnippet"> <meta name="robots" content="nofollow"> |
Scegliere un meccanismo di REP
Come si sceglie quale utilizzare? Fondamentalmente, i controlli a livello di pagina e di file robots.txt sono simili, ma non del tutto intercambiabili. A volte è possibile eseguire un'azione specifica con uno solo dei meccanismi, ad esempio se si vuole interrompere la scansione (come per le pagine di risultati di ricerca infiniti, possibile con robots.txt), se è necessario un controllo per un server FTP (possibile con robots.txt) o se non si vuole che venga mostrato uno snippet per una pagina (che è possibile solo con gli elementi a livello di pagina). Se non dovete distinguere tra il blocco della scansione e il blocco dell'indicizzazione, un approccio è quello di utilizzare il file robots.txt per controlli più ampi (per bloccare ampie parti di un sito web) e i controlli a livello di pagina per bloccare singole pagine.
Protocollo di esclusione robot: uno standard efficace e in continua evoluzione
Tutti questi controlli sono estensibili per loro natura. Nel corso degli anni, proprietari di siti, operatori di crawler e motori di ricerca hanno collaborato per migliorarli.
In passato, questo processo è iniziato con alcuni valori, tra cui noindex
e nofollow
, per poi adottarne altri come nosnippet
, noarchive
e max-snippet:
.
A volte i valori vengono ritirati, come nel caso di noodp
,
che utilizzava snippet di
DMOZ/Open Directory Project
prima della chiusura della directory.
Google supporta numerosi valori per i proprietari di siti e un numero simile di altri operatori di crawler di grandi dimensioni.
Nell'ambito del REP, i proprietari di siti hanno il controllo su cosa viene sottoposto a scansione e su come i dati sottoposti a scansione vengono utilizzati nei motori di ricerca. Possono farlo a livello generale per parti più grandi dei siti web o a livello molto granulare, per singole pagine, persino per le immagini all'interno delle pagine. Questi controlli sono ben noti, disponibili in tutti i sistemi di gestione dei contenuti comuni, supportati ampiamente dagli operatori commerciali e utilizzati oggi su miliardi di host su internet.