Generatore Robots.txt
Costruisci rapidamente un file robots.txt per il tuo sito web.
Preimpostazioni di avvio rapido
Come usare
- Scegli una preimpostazione o costruisci le regole manualmente.
- Aggiungi gruppi user-agent con percorsi Allow/Disallow.
- Aggiungi i tuoi URL di sitemap.
- Copia o scarica il file e mettilo nella directory radice del tuo sito.
Domande frequenti
Dove posizionare il file robots.txt?
Deve trovarsi alla radice del tuo dominio: https://tuodominio.com/robots.txt. Non funzionerà nelle sottodirectory.
robots.txt impedisce a Google di indicizzare le pagine?
robots.txt impedisce ai bot di esplorare le pagine, ma non le rimuove dai risultati di ricerca. Per questo, usa un tag meta noindex.
Cosa sono i bot IA?
I bot IA come GPTBot, CCBot e Google-Extended raccolgono contenuti per addestrare modelli IA. Puoi bloccarli specificamente nel tuo robots.txt.
Uno standard nato nel 1994, standardizzato nel 2022
Il Robots Exclusion Protocol fu progettato da Martijn Koster nel febbraio 1994, quasi tre decenni dopo i quali fu finalmente codificato come RFC 9309 nel settembre 2022. Per 28 anni è stato uno standard de facto che tutti concordavano di seguire senza che nessuno concordasse sui dettagli. La RFC ha fissato la sintassi (righe User-agent / Disallow / Allow), le regole di precedenza, il limite di dimensione del file (i parser devono accettare almeno 500 KiB), e come gestire gli errori (4xx → il crawler può accedere a qualsiasi cosa; 5xx → il crawler deve presumere il divieto completo). La maggior parte dei principali crawler dei motori di ricerca si conformava a un comportamento all'incirca uguale prima della RFC, ma le piccole differenze contavano.
Dove vive il file
Un file robots.txt deve essere servito all'URL esatto /robots.txt dalla radice della tua origine (uno per schema + host + porta). Le sottodirectory non funzionano; /blog/robots.txt è solo un 404 per i crawler. Ogni sottodominio ha bisogno del proprio (www.example.com/robots.txt e blog.example.com/robots.txt sono file indipendenti). Il file è testo semplice, servito come text/plain, codificato in UTF-8 (il BOM è consentito ma fortemente sconsigliato).
La sintassi in una pagina
# Comments start with #
User-agent: * # Apply to all crawlers
Disallow: /admin/ # Block this directory
Disallow: /search # Block search results
Allow: /admin/login # Allow this path even within /admin/
User-agent: Googlebot # Specific Googlebot rules
Disallow: /test/
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/news-sitemap.xml
Comportamenti chiave:
- Struttura a gruppi. Un «gruppo» inizia con una o più righe
User-agent:e continua con le regoleAllow:/Disallow:finché il successivoUser-agent:inizia un nuovo gruppo. - Vince la specificità. Il gruppo di user-agent più specifico si applica a un dato crawler. Googlebot legge le sue regole
User-agent: Googlebote ignora del tutto le regoleUser-agent: *. - Un
Disallow:vuoto significa «consenti tutto».Disallow: /significa «blocca tutto». La presenza/assenza della barra è cruciale. - Caratteri jolly.
*corrisponde a qualsiasi sequenza di caratteri;$corrisponde alla fine dell'URL.Disallow: /*.pdf$blocca tutti i PDF. Ufficialmente queste sono estensioni di Google, ma la maggior parte dei principali crawler le accetta. - Distinzione tra maiuscole e minuscole. I nomi degli user-agent non distinguono tra maiuscole e minuscole (Googlebot = googlebot). I percorsi URL nelle regole distinguono tra maiuscole e minuscole (
/Page≠/page) sui filesystem che distinguono tra maiuscole e minuscole.
Cosa NON fa robots.txt
Il malinteso più comune, e uno che Google segnala direttamente nella propria documentazione: robots.txt impedisce la scansione, non l'indicizzazione. Se una pagina è collegata da altrove sul web, Google può indicizzare l'URL (e mostrarlo nei risultati di ricerca con uno stub come «Nessuna informazione disponibile per questa pagina») anche se non ha mai scansionato la pagina stessa. Per tenere davvero una pagina fuori dai risultati di ricerca, usa un tag <meta name="robots" content="noindex"> sulla pagina stessa, o un'intestazione HTTP X-Robots-Tag: noindex. Il crawler deve essere autorizzato ad accedere alla pagina per vedere la direttiva noindex, il che significa che non dovresti vietare una pagina in robots.txt se le hai anche aggiunto noindex, perché il crawler non vedrà mai il noindex.
Altre cose che robots.txt non fa:
- Nascondere URL sensibili. Il file è leggibile pubblicamente; chiunque può recuperare
yoursite.com/robots.txt. Elencare percorsi come/admin/o/internal-tools/dice al mondo che quegli URL esistono. Per la vera segretezza, usa l'autenticazione; per il «basta non indicizzarlo», usa noindex. - Fermare i crawler malevoli. I malintenzionati ignorano del tutto robots.txt. È una richiesta ai crawler ben educati, non un'imposizione.
- Bloccare in modo affidabile i crawler delle schede di incorporamento. Il
facebookexternalhitdi Facebook, ilTwitterbotdi Twitter, ilLinkedInBotdi LinkedIn, i bot di Slack e Discord leggono tutti robots.txt, ma se li blocchi, i tuoi link condivisi non mostreranno le anteprime su quelle piattaforme. Consentili esplicitamente se vuoi le schede di condivisione.
User-agent che vale la pena conoscere
| User-agent | Proprietario | Cosa scansiona |
|---|---|---|
Googlebot | Indicizzazione per la ricerca web | |
Bingbot | Microsoft | Indicizzazione per la ricerca Bing |
DuckDuckBot | DuckDuckGo | Ricerca DuckDuckGo |
Slurp | Yahoo | Ricerca Yahoo |
YandexBot | Yandex | Ricerca russa |
Baiduspider | Baidu | Ricerca cinese |
facebookexternalhit | Meta | Metadati delle schede di condivisione di Facebook |
LinkedInBot | Anteprima di condivisione di LinkedIn | |
Twitterbot | X / Twitter | Metadati delle schede dei tweet |
Slackbot | Slack | Espansione dei link di Slack |
Discordbot | Discord | Anteprime dei link di Discord |
La questione dei crawler di IA
Dal 2023 è apparsa un'ondata di crawler per l'addestramento dell'IA, e molti siti hanno aggiunto regole robots.txt per rinunciare all'addestramento dell'IA. I principali da conoscere:
- GPTBot: il crawler di addestramento di OpenAI.
- ChatGPT-User: il crawler su richiesta di OpenAI quando gli utenti di ChatGPT gli chiedono di recuperare un URL.
- OAI-SearchBot: il crawler del prodotto di ricerca di OpenAI.
- Google-Extended: il token separato di Google per l'addestramento dell'IA (Bard / Gemini), indipendente da Googlebot. Ti permette di consentire la Ricerca ma bloccare l'addestramento dell'IA.
- ClaudeBot / Claude-User / Claude-SearchBot: i vari crawler di Anthropic.
- PerplexityBot: Perplexity AI.
- CCBot: Common Crawl, il dataset aperto su cui si addestra la maggior parte degli LLM.
- Bytespider: ByteDance / TikTok.
- Applebot-Extended: il token separato di Apple Intelligence, simile a Google-Extended.
Due cose importanti da sapere: (1) la rinuncia è volontaria, dato che ne sono interessati solo i crawler che rispettano robots.txt, e (2) il confine tra «ricerca» e «addestramento dell'IA» si sta sfumando rapidamente, quindi bloccare tutti i crawler di IA potrebbe anche influenzare come il tuo contenuto appare nei risultati di ricerca riassunti dall'IA. Usa il preset «Block AI Crawlers» qui sopra come punto di partenza, poi decidi quali compromessi hanno senso per il tuo sito.
Crawl-delay e perché Google lo ignora
La direttiva non standard Crawl-delay: chiede ai crawler di aspettare N secondi tra le richieste al tuo server. Bing, Yandex e molti crawler più piccoli la rispettano. Google no. La documentazione di Google afferma esplicitamente che Googlebot ignora Crawl-delay. Search Console esponeva un'impostazione manuale della frequenza di scansione, ma Google l'ha deprecata per la maggior parte dei siti all'inizio del 2024 e ora regola automaticamente la frequenza di scansione in base alla risposta del server. Se il tuo obiettivo è rallentare specificamente Googlebot, robots.txt è lo strumento sbagliato.
Direttiva Sitemap
Elencare la tua sitemap in robots.txt è un suggerimento ai crawler su dove trovare il tuo elenco di URL. Usa URL assoluti (https:// completo), uno per riga. Puoi elencare più sitemap per i siti che suddividono il contenuto in sitemap separate (una sitemap principale, una sitemap di notizie, una sitemap video, una sitemap di immagini). La direttiva Sitemap non fa formalmente parte del protocollo robots.txt originale, ma ogni motore di ricerca principale la legge.
Errori comuni
- Vietare i file CSS / JavaScript. Google usa il contenuto renderizzato per il posizionamento. Se Googlebot non può recuperare i tuoi
/css/o/js/, non può renderizzare correttamente le tue pagine, il che danneggia il SEO. Non bloccare le directory delle risorse. - Confondere Disallow con noindex. Disallow ferma la scansione; la pagina può comunque apparire nella ricerca tramite link in entrata. Usa i meta tag noindex per un effettivo controllo dell'indicizzazione.
- Elencare URL privati. Qualsiasi cosa in robots.txt è leggibile pubblicamente. Non pubblicizzare
/admin/o/wp-admin/se non vuoi che gli aggressori sappiano che esistono; usa invece un'autenticazione adeguata e affidati a noindex. Disallow:vuoto quando intendeviDisallow: /. Vuoto consente tutto;Disallow: /blocca tutto. Sono opposti.- Provare a bloccare i crawler di incorporamento e poi chiedersi perché le anteprime di condivisione non funzionano. Se vieti facebookexternalhit, i tuoi link condivisi non mostreranno le schede di Facebook. Consenti esplicitamente i bot dei social media se vuoi le anteprime.
- Dimenticare di aggiungere la riga Sitemap. È gratuita, utile, e la maggior parte dei generatori la omette.
- Affidarsi a Crawl-delay per rallentare Google. Non funziona. Usa Search Console.
- Usare robots.txt per bloccare per IP / regione / dispositivo. Il protocollo non ha alcun concetto di questi. Usa invece regole lato server.
- Non testare il file. Google ha ritirato il robots.txt Tester autonomo nel novembre 2023 e l'ha sostituito con il robots.txt Report dentro Search Console; quel report segnala gli errori di sintassi e mostra la scansione più recente. Controllalo sempre (o un altro validatore robots.txt open source) prima di distribuire.
Altre domande frequenti
Dove metto esattamente il file?
La radice del tuo dominio, accessibile esattamente a https://yoursite.com/robots.txt. Sulla maggior parte degli host ciò significa mettere robots.txt nella tua directory radice public / htdocs / www. WordPress e molti CMS ne generano uno dinamicamente; verifica se il tuo lo fa prima di aggiungere un file statico (quello statico vince se esistono entrambi).
Ho davvero bisogno di un robots.txt?
Tecnicamente no. Senza, i crawler hanno come impostazione predefinita «consenti tutto», il che va bene per la maggior parte dei siti pubblici. Ma quasi sempre ne vuoi uno per puntare alla tua sitemap, per bloccare ovvie trappole di scansione (pagine di risultati di ricerca, archivi paginati, URL parametrici), e sempre più per rinunciare all'addestramento dell'IA. Un robots.txt vuoto o che consente tutto per impostazione predefinita è comunque utile come posto dove mettere la riga Sitemap.
Quanto grande può essere robots.txt?
La RFC 9309 richiede che i parser accettino almeno 500 KiB (~500.000 byte). Google applica un limite di 500 KiB e ignora tutto ciò che va oltre. La stragrande maggioranza dei file robots.txt è ben al di sotto di 1 KiB. Se il tuo si sta avvicinando al limite, probabilmente stai elencando troppi URL specifici e dovresti usare invece schemi con caratteri jolly.
Cosa succede se il mio robots.txt restituisce un errore 500?
Secondo la RFC 9309, quando un crawler non può recuperare robots.txt a causa di un errore del server (5xx) deve presumere il divieto completo, il che significa che Google e gli altri crawler conformi smetteranno del tutto di scansionare il tuo sito finché il file non sarà di nuovo raggiungibile. Se l'endpoint del tuo robots.txt va giù, la tua visibilità nella ricerca va giù con esso. Assicurati che resti disponibile.
E Crawl-delay per Google?
Google ignora esplicitamente Crawl-delay. La direttiva funziona per Bing, Yandex e la maggior parte degli altri crawler. L'impostazione manuale della frequenza di scansione che Search Console esponeva è stata deprecata per la maggior parte dei siti all'inizio del 2024; Google ora regola automaticamente la frequenza di scansione in base a come risponde il tuo server. Impostare Crawl-delay in robots.txt non romperà nulla; semplicemente non cambierà il comportamento di Googlebot.
Dovrei bloccare i crawler di IA?
Compromesso. Bloccare GPTBot, Google-Extended, ClaudeBot, ecc. esclude il tuo contenuto dai dati di addestramento per quei modelli, il che è la scelta giusta se vuoi limitare il riutilizzo del tuo contenuto. Il costo: man mano che i risultati di ricerca riassunti dall'IA diventano più comuni, anche il contenuto bloccato potrebbe avere meno probabilità di essere citato o mostrato. Molti editori bloccano i crawler di addestramento dell'IA ma consentono ai crawler di ricerca di IA (OAI-SearchBot, ecc.) di continuare a essere citabili. Il preset «Block AI Crawlers» adotta l'approccio massimalista; modificalo per adattarlo alle tue priorità.