Crawling & Indexing

Robots.txt

Robots.txt

Un file robots.txt è un file di testo semplice posizionato nella directory principale di un sito web che comunica istruzioni ai crawler web e ai bot dei motori di ricerca riguardo a quali URL possono o non possono accedere. Funge da elemento fondamentale del protocollo di esclusione dei robot, aiutando i proprietari di siti web a gestire il traffico dei crawler, ottimizzare il budget di scansione e proteggere i contenuti sensibili dall'indicizzazione.

Definizione di Robots.txt

Robots.txt è un file di testo semplice posizionato nella directory principale di un sito web (ad esempio, www.example.com/robots.txt ) che comunica istruzioni ai crawler web e ai bot dei motori di ricerca riguardo a quali URL possono o non possono accedere. Questo file funge da elemento fondamentale del protocollo di esclusione dei robot, uno standard che aiuta a gestire l’attività dei bot sui siti web. Specificando direttive come “allow” e “disallow”, i proprietari di siti web possono controllare come i motori di ricerca e altri crawler interagiscono con i loro contenuti. Secondo Google Search Central, un file robots.txt indica ai crawler dei motori di ricerca quali URL il crawler può visitare sul tuo sito, principalmente per evitare di sovraccaricare il tuo sito con richieste e ottimizzare l’allocazione del budget di scansione.

L’importanza di robots.txt va oltre il semplice controllo degli accessi. Rappresenta un meccanismo di comunicazione critico tra i proprietari di siti web e i sistemi automatizzati che indicizzano e analizzano i contenuti web. Il file deve essere nominato esattamente “robots.txt” e posizionato nella directory principale per essere riconosciuto dai crawler web. Senza una corretta configurazione di robots.txt, i motori di ricerca potrebbero sprecare prezioso budget di scansione su pagine duplicate, contenuti temporanei o risorse non essenziali, riducendo infine l’efficienza dell’indicizzazione delle pagine importanti. Questo rende robots.txt un componente essenziale della SEO tecnica e della strategia di gestione del sito web.

Contesto storico ed evoluzione di Robots.txt

Il protocollo di esclusione dei robot fu proposto per la prima volta nel 1994 come standard volontario affinché i crawler web rispettassero le preferenze dei proprietari dei siti. La specifica originale era semplice ma efficace, permettendo ai webmaster di comunicare regole di accesso di base senza complessi sistemi di autenticazione. Nel corso dei decenni, robots.txt si è evoluto per accogliere nuovi tipi di crawler, inclusi i bot dei motori di ricerca, i crawler dei social media e, più recentemente, i crawler per l’addestramento AI utilizzati da aziende come OpenAI, Anthropic e Perplexity. Il protocollo è rimasto in gran parte retrocompatibile, garantendo che i siti web creati decenni fa possano ancora funzionare con i crawler moderni.

L’adozione di robots.txt è cresciuta significativamente nel tempo. Secondo il Web Almanac 2024, le richieste riuscite di file robots.txt sono state effettuate sull’83,9% dei siti web quando accessibili da mobile e sull'83,5% da desktop, in aumento rispetto all'82,4% e all'81,5% del 2022. Questa tendenza al rialzo riflette una crescente consapevolezza tra i proprietari di siti web sull’importanza di gestire il traffico dei crawler. La ricerca sui siti web di disinformazione ha mostrato un tasso di adozione del 96,4%, suggerendo che robots.txt è ora considerato una pratica standard in diverse categorie di siti web. L’evoluzione di robots.txt continua oggi mentre i proprietari di siti web affrontano nuove sfide, come il blocco dei bot AI che potrebbero non rispettare le direttive tradizionali di robots.txt o potrebbero utilizzare crawler non dichiarati per eludere le restrizioni.

Logo

Ready to Monitor Your AI Visibility?

Track how AI chatbots mention your brand across ChatGPT, Perplexity, and other platforms.

Come funziona Robots.txt: meccanismo tecnico

Quando un crawler web visita un sito web, controlla prima il file robots.txt nella directory principale prima di scansionare qualsiasi altra pagina. Il crawler legge il file e interpreta le direttive per determinare quali URL può visitare. Questo processo avviene tramite una richiesta HTTP al dominio principale e il server risponde con il contenuto del file robots.txt. Il crawler analizza quindi il file secondo la sua specifica implementazione del protocollo di esclusione dei robot, che può variare leggermente tra diversi motori di ricerca e tipi di bot. Questo controllo iniziale garantisce che i crawler rispettino le preferenze dei proprietari del sito prima di consumare risorse del server.

La direttiva user-agent è la chiave per targeting crawler specifici. Ogni crawler ha un identificatore univoco (stringa user-agent) come “Googlebot” per il crawler di Google, “Bingbot” per il crawler di Microsoft, o “GPTbot” per il crawler di OpenAI. I proprietari di siti web possono creare regole per user-agent specifici o utilizzare il carattere jolly “*” per applicare regole a tutti i crawler. La direttiva disallow specifica quali URL o pattern di URL il crawler non può visitare, mentre la direttiva allow può sovrascrivere le regole disallow per pagine specifiche. Questo sistema gerarchico fornisce un controllo granulare sul comportamento dei crawler, permettendo ai proprietari di siti web di creare pattern di accesso complessi che ottimizzano sia le risorse del server che la visibilità nei motori di ricerca.

Tabella comparativa: Robots.txt vs. metodi di controllo dei crawler correlati

AspettoRobots.txtMeta Tag RobotsIntestazione X-Robots-TagProtezione tramite password
AmbitoIntero sito o a livello di directoryLivello di singola paginaLivello di singola pagina o risorsaControllo accesso a livello di server
ImplementazioneFile di testo nella directory principaleMeta tag HTML nell’intestazione della paginaIntestazione della risposta HTTPAutenticazione del server
Scopo principaleGestire traffico e budget di scansioneControllare indicizzazione e scansioneControllare indicizzazione e scansioneImpedire ogni accesso
ApplicabilitàVolontaria (non giuridicamente vincolante)Volontaria (non giuridicamente vincolante)Volontaria (non giuridicamente vincolante)Applicata dal server
Conformità bot AIVariabile (alcuni bot la ignorano)Variabile (alcuni bot la ignorano)Variabile (alcuni bot la ignorano)Altamente efficace
Impatto sui risultati di ricercaLa pagina può comunque apparire senza descrizionePagina esclusa dai risultatiPagina esclusa dai risultatiPagina completamente nascosta
Caso d’uso miglioreOttimizzare budget di scansione, gestire carico serverImpedire l’indicizzazione di pagine specificheImpedire l’indicizzazione di risorseProteggere dati sensibili
Facilità di implementazioneFacile (file di testo)Facile (tag HTML)Moderata (richiede configurazione server)Da moderata a complessa

Direttive fondamentali e sintassi di Robots.txt

Un file robots.txt utilizza una sintassi semplice che i proprietari di siti web possono creare e modificare con qualsiasi editor di testo semplice. La struttura di base consiste in una riga user-agent seguita da una o più righe di direttive. Le direttive più comunemente utilizzate sono disallow (che impedisce ai crawler di accedere a URL specifici), allow (che permette l’accesso a URL specifici anche se esiste una regola disallow più ampia), crawl-delay (che specifica quanto tempo un crawler deve attendere tra le richieste) e sitemap (che indirizza i crawler alla posizione della sitemap XML). Ogni direttiva deve trovarsi sulla propria riga e il file deve utilizzare una formattazione corretta per essere riconosciuto adeguatamente dai crawler.

Ad esempio, un file robots.txt di base potrebbe apparire così:

User-agent: *
Disallow: /admin/
Disallow: /private/
Allow: /private/public-page.html
Sitemap: https://www.example.com/sitemap.xml

Questa configurazione dice a tutti i crawler di evitare le directory /admin/ e /private/, ma permette l’accesso alla pagina specifica /private/public-page.html. La direttiva sitemap guida i crawler verso la sitemap XML per un’indicizzazione efficiente. I proprietari di siti web possono creare più blocchi user-agent per applicare regole diverse a crawler differenti. Ad esempio, un sito web potrebbe permettere a Googlebot di scansionare tutti i contenuti ma limitare altri crawler dall’accesso a determinate directory. La direttiva crawl-delay può rallentare i crawler aggressivi, sebbene Googlebot di Google non riconosca questo comando e utilizzi invece le impostazioni del tasso di scansione in Google Search Console.

Robots.txt e ottimizzazione del budget di scansione

Il budget di scansione si riferisce al numero di URL che un motore di ricerca scansionerà su un sito web in un determinato periodo di tempo. Per i siti web di grandi dimensioni con milioni di pagine, il budget di scansione è una risorsa limitata che deve essere gestita strategicamente. Robots.txt svolge un ruolo cruciale nell’ottimizzazione del budget di scansione impedendo ai crawler di sprecare risorse su contenuti di scarso valore come pagine duplicate, file temporanei o risorse non essenziali. Utilizzando robots.txt per bloccare URL non necessari, i proprietari di siti web possono garantire che i motori di ricerca concentrino il loro budget di scansione sulle pagine importanti che dovrebbero essere indicizzate e classificate. Questo è particolarmente importante per i siti di e-commerce, le pubblicazioni di notizie e altri siti web su larga scala dove il budget di scansione influisce direttamente sulla visibilità nei motori di ricerca.

Le linee guida ufficiali di Google sottolineano che robots.txt dovrebbe essere utilizzato per gestire il traffico di scansione ed evitare di sovraccaricare il tuo sito con richieste. Per i siti grandi, Google fornisce raccomandazioni specifiche per la gestione del budget di scansione, inclusa l’utilizzo di robots.txt per bloccare contenuti duplicati, parametri di paginazione e file di risorse che non influiscono significativamente sul rendering della pagina. I proprietari di siti web dovrebbero evitare di bloccare file CSS, JavaScript o immagini essenziali per il rendering delle pagine, poiché ciò può impedire a Google di comprendere correttamente il contenuto della pagina. L’uso strategico di robots.txt, combinato con altre pratiche SEO tecniche come le sitemap XML e il linking interno, crea un ambiente di scansione efficiente che massimizza il valore del budget di scansione disponibile.

Limitazioni e considerazioni importanti

Sebbene robots.txt sia uno strumento prezioso per gestire il comportamento dei crawler, presenta limitazioni significative che i proprietari di siti web devono comprendere. In primo luogo, robots.txt non è giuridicamente vincolante e opera come un protocollo volontario. Mentre i principali motori di ricerca come Google, Bing e Yahoo rispettano le direttive robots.txt, i bot maligni e gli scraper possono scegliere di ignorare completamente il file. Ciò significa che robots.txt non dovrebbe essere utilizzato come meccanismo di sicurezza per proteggere informazioni sensibili. In secondo luogo, diversi crawler interpretano la sintassi di robots.txt in modo diverso, il che può portare a comportamenti incoerenti tra le piattaforme. Alcuni crawler potrebbero non comprendere determinate direttive avanzate o potrebbero interpretare i pattern di URL in modo diverso da quanto previsto.

In terzo luogo, e in modo critico per la gestione web moderna, una pagina non consentita in robots.txt può comunque essere indicizzata se collegata da altri siti web. Secondo la documentazione di Google, se pagine esterne si collegano al tuo URL non consentito con testo di ancoraggio descrittivo, Google potrebbe comunque indicizzare quell’URL e mostrarlo nei risultati di ricerca senza descrizione. Ciò significa che robots.txt da solo non può impedire l’indicizzazione; impedisce solo la scansione. Per impedire correttamente l’indicizzazione, i proprietari di siti web devono utilizzare metodi alternativi come il meta tag noindex, le intestazioni HTTP o la protezione tramite password. Inoltre, ricerche recenti hanno rivelato che alcuni crawler AI eludono deliberatamente le restrizioni robots.txt utilizzando stringhe user-agent non dichiarate, rendendo robots.txt inefficace contro determinati bot di addestramento AI.

Bot AI e Robots.txt: sfide emergenti

L’ascesa dei modelli linguistici di grandi dimensioni e dei motori di ricerca basati sull’AI ha creato nuove sfide per la gestione di robots.txt. Aziende come OpenAI (GPTbot), Anthropic (Claude) e Perplexity hanno implementato crawler per addestrare i loro modelli e alimentare le loro funzionalità di ricerca. Molti proprietari di siti web hanno iniziato a bloccare questi bot AI utilizzando direttive robots.txt. La ricerca del Senior Search Scientist di Moz mostra che GPTbot è il bot più bloccato, con molte pubblicazioni di notizie e creatori di contenuti che aggiungono regole disallow specifiche per i crawler di addestramento AI. Tuttavia, l’efficacia di robots.txt nel bloccare i bot AI è discutibile, poiché alcune aziende AI sono state sorprese a utilizzare crawler non dichiarati che non si identificano correttamente.

Cloudflare ha riportato che Perplexity utilizzava crawler furtivi e non dichiarati per eludere le direttive di non-scansione dei siti web, dimostrando che non tutti i bot AI rispettano le regole robots.txt. Ciò ha portato a discussioni in corso nelle comunità SEO e di sviluppo web sulla sufficienza di robots.txt per controllare l’accesso dei bot AI. Alcuni proprietari di siti web hanno implementato misure aggiuntive come regole WAF (Web Application Firewall) per bloccare indirizzi IP o stringhe user-agent specifici. La situazione evidenzia l’importanza di monitorare l’apparenza del tuo sito web nei risultati di ricerca AI e di comprendere quali bot stanno effettivamente accedendo ai tuoi contenuti. Per i siti web preoccupati per l’utilizzo dei dati di addestramento AI, robots.txt dovrebbe essere combinato con altre misure tecniche e potenzialmente accordi legali con le aziende AI.

Migliori pratiche per creare e mantenere Robots.txt

Creare un file robots.txt efficace richiede una pianificazione attenta e una manutenzione continua. In primo luogo, posiziona il file robots.txt nella directory principale del tuo sito web (ad esempio, www.example.com/robots.txt ) e assicurati che sia nominato esattamente “robots.txt” con codifica UTF-8 corretta. In secondo luogo, utilizza regole disallow chiare e specifiche che mirino solo al contenuto che desideri bloccare, evitando regole eccessivamente restrittive che potrebbero impedire la scansione di pagine importanti. In terzo luogo, includi una direttiva sitemap che punti alla tua sitemap XML, aiutando i crawler a scoprire e dare priorità alle pagine importanti. In quarto luogo, testa il tuo file robots.txt utilizzando strumenti come Google Robots Testing Tool o la funzione Site Crawl di Moz Pro per verificare che le tue regole funzionino come previsto.

I proprietari di siti web dovrebbero rivedere e aggiornare regolarmente i loro file robots.txt man mano che la struttura del sito cambia. Gli errori comuni includono:

  • Bloccare file CSS, JavaScript o immagini essenziali per il rendering della pagina
  • Utilizzare regole disallow eccessivamente ampie che bloccano accidentalmente contenuti importanti
  • Non aggiornare robots.txt quando la struttura del sito cambia
  • Ignorare le differenze specifiche dei crawler nell’interpretazione delle direttive
  • Non testare il file prima della pubblicazione
  • Bloccare l’intero sito con “Disallow: /” quando solo sezioni specifiche dovrebbero essere bloccate
  • Dimenticare di includere la direttiva sitemap per una scansione efficiente

Il monitoraggio regolare attraverso i log del server, Google Search Console e strumenti SEO aiuta a identificare i problemi tempestivamente. Se noti che pagine importanti non vengono scansionate o indicizzate, controlla prima il tuo file robots.txt per assicurarti che non le stia bloccando accidentalmente. Per piattaforme CMS come WordPress o Wix, molte forniscono interfacce integrate per la gestione di robots.txt senza richiedere la modifica diretta del file, rendendo più facile per gli utenti non tecnici implementare una corretta gestione dei crawler.

Decidere quando Robots.txt è lo strumento giusto

Robots.txt viene spesso utilizzato per default quando l’obiettivo reale richiederebbe un meccanismo diverso, quindi la decisione dovrebbe iniziare con ciò che realmente si desidera ottenere. Se l’obiettivo è impedire a una pagina di apparire nei risultati di ricerca, robots.txt è lo strumento sbagliato — come spiegato sopra, un URL non consentito può comunque essere indicizzato e mostrato senza descrizione se altri siti si collegano ad esso. La scelta corretta è un meta tag noindex o un’intestazione X-Robots-Tag, che istruiscono esplicitamente i motori di ricerca a non indicizzare la pagina anche dopo averla scansionata.

Se l’obiettivo è gestire il budget di scansione su un sito di grandi dimensioni — impedire ai crawler di sprecare richieste su pagine duplicate, parametri di paginazione o pagine di risultati di ricerca interni — robots.txt è lo strumento giusto, poiché il suo scopo effettivo (secondo Google Search Central) è evitare il sovraccarico del server e indirizzare il budget di scansione verso contenuti di valore, non controllare l’indicizzazione.

Se l’obiettivo è proteggere informazioni veramente sensibili, robots.txt è lo strumento completamente sbagliato, poiché è un protocollo volontario e non applicabile che i bot maligni e gli scraper ignorano regolarmente. La protezione tramite password o il controllo degli accessi a livello di server è la scelta corretta in questo caso — robots.txt segnala solo una preferenza ai crawler ben educati.

Se l’obiettivo è controllare se i crawler di addestramento AI come GPTbot accedono ai tuoi contenuti, robots.txt è un primo passo ragionevole e il più utilizzato, ma il quadro decisionale deve tenere conto della sua nota inaffidabilità contro questa specifica classe di crawler: poiché alcune aziende AI sono state documentate utilizzare crawler furtivi non dichiarati per eludere le direttive di non-scansione, robots.txt dovrebbe essere affiancato da blocchi a livello WAF di user-agent o IP se l’obiettivo è effettivamente impedire l’accesso piuttosto che solo registrare una preferenza.

La regola decisionale di fondo: usa robots.txt per la gestione del budget di scansione, dove è lo strumento standard e corretto; usa un meccanismo diverso (noindex, autenticazione, WAF) ogni volta che il requisito effettivo è il controllo dell’indicizzazione o l’applicazione dell’accesso, poiché robots.txt non è mai stato progettato per garantire né l’uno né l’altro.

Robots.txt e AmICited: monitoraggio della visibilità nella ricerca AI

Per le organizzazioni che utilizzano AmICited per monitorare le apparizioni del proprio marchio e dominio nei motori di ricerca AI, comprendere robots.txt è essenziale. La tua configurazione robots.txt influisce direttamente su quali crawler AI possono accedere ai tuoi contenuti e su come questi appaiono nelle risposte generate dall’AI su piattaforme come ChatGPT, Perplexity, Google AI Overviews e Claude. Se blocchi determinati bot AI con robots.txt, potresti ridurre la tua visibilità nei loro risultati di ricerca, il che potrebbe essere una scelta strategica a seconda dei tuoi contenuti e obiettivi aziendali. Tuttavia, come notato in precedenza, alcuni bot AI potrebbero non rispettare le direttive robots.txt, quindi monitorare la tua effettiva apparizione nelle risposte AI è fondamentale.

Domande frequenti

Pronto a monitorare la tua visibilità AI?

Inizia a tracciare come i chatbot AI menzionano il tuo brand su ChatGPT, Perplexity e altre piattaforme. Ottieni informazioni utili per migliorare la tua presenza AI.

Scopri di più

Come Verificare la Copertura di Robots.txt e Sitemap in AmICited
Come Verificare la Copertura di Robots.txt e Sitemap in AmICited

Come Verificare la Copertura di Robots.txt e Sitemap in AmICited

Usa il controllo Robots.txt e Sitemap nell'audit Agent Accessibility di AmICited per confermare che i crawler AI e di ricerca possano leggere il tuo sito e che ...

7 min di lettura
Come configurare robots.txt per i crawler AI: guida completa
Come configurare robots.txt per i crawler AI: guida completa

Come configurare robots.txt per i crawler AI: guida completa

Scopri come configurare robots.txt per controllare l'accesso dei crawler AI, inclusi GPTBot, ClaudeBot e Perplexity. Gestisci la visibilità del tuo brand nelle ...

9 min di lettura