Per gestire correttamente i crawler IA bisogna separare tre decisioni: il bot può scansionare l’URL, la pagina deve restare trovabile in una ricerca o risposta, e il contenuto può rientrare in una finalità di training specifica del provider? Una regola globale Disallow: / per tutti i bot IA mescola obiettivi diversi.
OpenAI distingue attualmente OAI-SearchBot e GPTBot. Se un publisher vuole che i contenuti possano essere scoperti e inclusi nei risultati di ChatGPT Search, la guida OpenAI indica di non bloccare OAI-SearchBot. GPTBot può invece essere bloccato separatamente per escludere pagine dal potenziale ambito di training.
Parti dal risultato desiderato
| Obiettivo | robots.txt | Controllo aggiuntivo |
|---|---|---|
| Mantenere ricerca tradizionale e ricerca IA | Non bloccare il crawler di ricerca rilevante | Mantenere la pagina indicizzabile se deve apparire |
| Consentire ricerca IA ma bloccare crawler di training | Separare i gruppi User-agent | Verificare la documentazione aggiornata |
| Tenere una pagina pubblica fuori dai risultati | Non affidarsi solo a robots.txt | Consentire la scansione e servire noindex |
| Proteggere contenuti privati | Non usare robots.txt come sicurezza | Autenticazione/autorizzazione |
robots.txt è un’indicazione per crawler compatibili, non un sistema di controllo accessi.
Esempio: consentire ChatGPT Search e bloccare GPTBot
User-agent: OAI-SearchBot
Allow: /
User-agent: GPTBot
Disallow: /
User-agent: *
Allow: /
Sitemap: https://example.com/sitemap.xml
Conta la separazione degli scopi. Nomi e policy possono cambiare, quindi verifica sempre le fonti ufficiali prima di pubblicare.
Disallow non equivale a noindex
Disallow controlla la scansione. noindex controlla l’indicizzazione nei sistemi che lo supportano. Se una pagina viene bloccata in robots.txt, il crawler potrebbe non leggere la meta directive.
User-agent: OAI-SearchBot
Disallow: /preview/
insieme a:
<meta name="robots" content="noindex">
può essere una combinazione incoerente per una pagina pubblica che vuoi solo fuori dai risultati. In quel caso è normalmente più chiaro consentire la scansione e restituire noindex. I dati realmente privati richiedono autenticazione.
Evita liste enormi di bot copiate senza contesto
Liste lunghe invecchiano rapidamente e mescolano ricerca, training e recupero richiesto dall’utente. Una policy corta con una motivazione chiara per ogni gruppo è più facile da mantenere.
# Consenti la scoperta in ChatGPT Search
User-agent: OAI-SearchBot
Allow: /
# Preferenza separata per GPTBot
User-agent: GPTBot
Disallow: /
Mantieni le normali regole del sito
Consentire un crawler di ricerca IA non significa aprire account, carrello o ricerca interna.
User-agent: OAI-SearchBot
Disallow: /account/
Disallow: /cart/
Allow: /
User-agent: GPTBot
Disallow: /
User-agent: *
Disallow: /account/
Disallow: /cart/
Allow: /
Testa URL reali: con regole sovrapposte conta più la specificità che l’ordine visivo.
Checklist prima della pubblicazione
/robots.txtè servito dalla root dell’host corretto;- Googlebot e Bingbot accedono ancora alle pagine importanti;
- i token IA provengono dalla documentazione attuale;
- ricerca e training sono separati quando il provider lo consente;
- le pagine con
noindexpossono essere lette dal crawler interessato; - i dati sensibili usano veri controlli di accesso;
- la sitemap contiene URL pubblici canonici;
- le regole sono state validate e testate con URL rappresentativi.
robots.txt può essere memorizzato in cache. Dopo il deploy controlla file live, stato HTTP, log e referral. La strategia più stabile è definire lo scopo di ogni crawler, scrivere il minimo di regole e ricontrollare periodicamente la documentazione del provider.