ai
Il robots.txt gestito da Cloudflare blocca i crawler AI
Cloudflare può inserire un proprio blocco robots.txt sopra le tue regole. MetricSpot controlla se quel blocco gestito vieta GPTBot o ClaudeBot, anche quando il tuo file li consente.
Cosa controlla questo check
Cerca i marcatori con cui Cloudflare racchiude le direttive che inserisce in /robots.txt:
# BEGIN Cloudflare Managed content
User-agent: *
Content-Signal: search=yes,ai-train=no,use=reference
Allow: /
User-agent: ClaudeBot
Disallow: /
User-agent: GPTBot
Disallow: /
# END Cloudflare Managed Content
User-agent: GPTBot
Allow: /
La sezione gestita viene giudicata da sola. Il check fallisce quando contiene Disallow: / per GPTBot o ClaudeBot. Le tue regole sotto il marcatore sono valutate separatamente da Permettere i crawler AI, quindi i due rilievi ti dicono esattamente quale livello sta bloccando.
Il check compare solo quando i marcatori sono presenti. I siti che non usano il robots.txt gestito di Cloudflare non lo vedono mai.
Perché è importante
L’opzione “Manage AI bots’ robots.txt” di Cloudflare (in AI Crawl Control) riscrive il file servito dalla tua origine. Antepone un blocco che:
- dichiara
Content-Signal: ai-train=noper tutti i crawler, una riserva di diritti ai sensi della direttiva UE sul copyright - aggiunge
Disallow: /per GPTBot, ClaudeBot, CCBot, Google-Extended, Bytespider, Amazonbot e altri
Molti proprietari lo attivano per il Content Signal e non notano le righe Disallow. Poi aggiungono Allow: / più in basso e danno per scontato che vinca. Non in modo affidabile: i parser di robots.txt uniscono i gruppi in modi diversi, diversi crawler prendono il primo gruppo corrispondente, e Cloudflare di solito blocca gli stessi bot anche all’edge (vedi Crawler AI bloccati all’edge).
Il risultato è un robots.txt che dice una cosa in alto e il contrario in basso. Questo check rende visibile la metà superiore.
Come risolvere
- Apri il tuo dominio nella dashboard Cloudflare e vai su AI Crawl Control (account meno recenti: Security → Bots).
- Disattiva Manage AI bots’ robots.txt. Il blocco inserito sparisce in pochi minuti e il tuo file viene servito così com’è.
- Se vuoi mantenere la riga
Content-Signal, lascia l’opzione attiva e imposta GPTBot e ClaudeBot su Allow nell’elenco dei crawler. Cloudflare rimuove allora le loro righeDisallowdal blocco gestito. - Controlla anche l’edge: la stessa schermata decide se quei crawler ricevono un 403 prima ancora di leggere robots.txt.
Verifica
curl -s https://yourdomain.com/robots.txt | sed -n '/BEGIN Cloudflare/,/END Cloudflare/p'
Se il blocco è sparito, o non elenca più GPTBot e ClaudeBot sotto Disallow: /, rilancia l’audit.
Domande frequenti
Non ho mai modificato robots.txt. Da dove arriva questo blocco?
Da Cloudflare, non dal tuo CMS. Tutto ciò che sta tra # BEGIN Cloudflare Managed content e # END Cloudflare Managed Content viene generato all’edge e non tocca mai il file sul tuo server.
Un Allow: / più in basso lo annulla?
Non in modo affidabile. L’RFC 9309 dice che un Allow e un Disallow equivalenti dovrebbero risolversi in Allow quando i gruppi vengono uniti, ma non tutti i crawler uniscono i gruppi, e il blocco Cloudflare viene prima. Elimina il conflitto invece di affidarti al comportamento del parser.
La riga Content-Signal è dannosa?
No. ai-train=no è una riserva di diritti, non un blocco. Puoi tenerla e consentire comunque a GPTBot e ClaudeBot di scansionare per ricerca e citazioni.
Fonti
Ultimo aggiornamento 2026-09-04