Skip to content
Enjoy 20% off for 12 months on all plans. Use promo code: HYPERGROWTHClaim it

Robots.txt Crawl-Delay: perché Googlebot lo ignora (e cosa funziona davvero)

Di Toy Wen Da, Co-founder · Aggiornato · 5 min di lettura

Tradotto dall'originale in inglese. Leggilo in inglese

Il crawl-delay nel robots.txt è una direttiva che indica a un crawler quanti secondi aspettare tra una richiesta e l'altra al tuo server. Il problema è che Google non lo supporta affatto: il primo passo è quindi capire quali bot stanno davvero mettendo sotto pressione il tuo sito e scegliere, per ciascuno, una soluzione che rispetterà.

Un robot giocattolo su una superficie scura, in colori vivaci, che rappresenta un crawler che segue le regole.

Prima di cambiare qualsiasi cosa, passa il tuo file nel Robots.txt Tester gratuito. Inserisci il tuo URL e ti mostra quali regole si applicano a quale user-agent, compresa qualsiasi riga crawl-delay che si trova in un blocco che Googlebot salterà.

Cosa controlla il crawl-delay nel robots.txt

Una riga crawl-delay si trova all'interno di un blocco user-agent:

User-agent: Bingbot
Crawl-delay: 10

Questo indica a Bingbot di aspettare 10 secondi tra un accesso e l'altro. È uno strumento grossolano che da anni fa parte in modo informale del Robots Exclusion Protocol, anche se non è mai stato standardizzato per tutti i crawler.

Googlebot non lo legge e non vi dà seguito: se è Google il crawler che mette in difficoltà il tuo server, la direttiva non ti serve a nulla. Bing e Yandex invece la rispettano, il che la rende utile quando sono questi i bot che causano il carico. DuckDuckGo si appoggia in larga misura all'indice di Bing e raramente effettua scansioni autonome sulla stessa scala.

Un robot in 3D con braccia a tentacolo e la scritta HOAX, che rappresenta un crawler le cui istruzioni vengono ignorate.
Crawler Supporta il crawl-delay? Cosa controlla davvero la sua frequenza Nota
Googlebot No Automatica, in base alla risposta del server e allo stato di salute del sito La documentazione di Google afferma che non usa il campo crawl-delay
Bingbot Sì Il valore numerico che imposti, in secondi Trattato come attesa minima tra una richiesta e l'altra
Yandex Sì Lo stesso campo crawl-delay Interpretato alla lettera come secondi
DuckDuckBot Incoerente Si basa soprattutto sui dati di scansione di Bing Raramente è da solo una fonte importante di carico sul server

Come correggere il crawl-delay e le regole con caratteri jolly sul tuo sito

Un robot giocattolo che tiene una vite metallica tra gli attrezzi, a illustrare la riparazione passo passo di un file robots.txt.

Segui questi passaggi nell'ordine:

  1. Trova il tuo file. Apri yoursite.com/robots.txt in un browser. Deve trovarsi nella radice del dominio: una copia messa in una sottocartella non verrà letta.
  2. Individua l'editor. Nella maggior parte dei CMS si trova in un menu Impostazioni o SEO (Settings / SEO), spesso con l'etichetta "Robots.txt" o "Crawler Access". In un sito sviluppato su misura di solito è un file statico che il tuo sviluppatore modifica e pubblica.
  3. Cerca righe crawl-delay sotto Googlebot. Cancella quelle che trovi: non fanno nulla e ingombrano soltanto il file per la persona che lo modificherà dopo di te.
  4. Controlla le regole con caratteri jolly. Una riga come Disallow: /*.pdf$ blocca tutti i PDF, cosa che di solito è voluta. Ma Disallow: /category* può bloccare in silenzio ogni URL che inizia con quella stringa, comprese pagine che volevi indicizzare, quindi leggi ogni regola con carattere jolly come farebbe un crawler, alla lettera.
  5. Salva, poi ritesta il file online con il Robots.txt Tester invece di fidarti di ciò che ricordi di aver scritto.
  6. Se ti serve un file pulito da zero, il Robots.txt Generator produce una sintassi valida, senza gli errori da caratteri jolly tipici della modifica a mano.

Quando bastano gli strumenti del tuo sito e quando no

Un primo piano di un robot giocattolo futuristico su una superficie riflettente, a illustrare la scelta tra un controllo rapido e un audit completo.

Verificare un singolo URL rispetto al tuo robots.txt richiede pochi secondi con qualsiasi tester decente: incolla l'URL e guarda se è consentito o bloccato.

Un problema ricorrente o che riguarda tutto il sito è un'altra faccenda. Se le pagine spariscono dai risultati di ricerca in un'intera sezione, o uno sviluppatore ha pubblicato un nuovo robots.txt durante un deploy e nessuno se n'è accorto, non stai più facendo il debug di una riga, ma analizzando uno schema. Serve una scansione completa del sito, confrontata con il file.

  • Per un singolo URL e un controllo una tantum, basta un tester gratuito.
  • Per un audit dell'intero sito, un monitoraggio continuo, o un sito il cui robots.txt è cambiato senza approvazione, serve un monitoraggio tecnico costante.

Errori comuni con crawl-delay e caratteri jolly

  • Aggiungere un crawl-delay sotto User-agent: * aspettandosi che rallenti Google.
  • Scrivere un carattere jolly pensato per una cartella che corrisponde anche a una dozzina di altre con lo stesso prefisso.
  • Dimenticare l'ancora di fine stringa $, così Disallow: /checkout blocca anche /checkout-help e /checkout-faq.
  • Lasciare che uno sviluppatore modifichi il file online durante un deploy senza alcun passaggio di revisione.
  • Considerare il robots.txt una misura di sicurezza, quando scoraggia soltanto i crawler educati e non limita l'accesso.

Domande frequenti

Il crawl-delay nel robots.txt funziona con Google?

No. Google ha dichiarato chiaramente di non supportare il campo crawl-delay nel robots.txt. Se Googlebot sta sovraccaricando il tuo server, usa Search Console o un limite di frequenza (rate limiting) a livello di server.

Quali motori di ricerca rispettano il crawl-delay?

Bing e Yandex onorano entrambi la direttiva, intesa come numero minimo di secondi tra una richiesta e l'altra. Google e la maggior parte dei moderni crawler di IA no.

Qual è la differenza tra Disallow e crawl-delay?

Disallow blocca del tutto l'accesso di un crawler a un percorso URL. Il crawl-delay non blocca nulla e chiede soltanto a un crawler collaborativo di rallentare.

Come funzionano i caratteri jolly nel robots.txt?

L'asterisco (*) corrisponde a qualsiasi sequenza di caratteri, e il simbolo del dollaro ($) ancora una regola alla fine di un URL. Combinati con leggerezza, sono la causa più comune di blocchi eccessivi involontari.

Una regola sbagliata nel robots.txt può deindicizzare le mie pagine?

Sì. Se una regola disallow con carattere jolly corrisponde a pagine prima indicizzate, i motori di ricerca smetteranno di scansionarle e alla fine le elimineranno dai risultati.

Fai controllare bene il tuo robots.txt

Passa il tuo file online nel Robots.txt Tester prima di dare per scontato che una regola crawl-delay o con carattere jolly si comporti come previsto, perché la maggior parte dei problemi in questo file dipende da un solo carattere fuori posto. Se vuoi un secondo parere su come viene scansionato l'intero sito, parla con il team e ricevi un report di esempio su ciò che blocca le tue pagine.

Riferimenti / Fonti

  1. Google non lo supporta affatto
  2. Robots Exclusion Protocol
  3. Bing
  4. La documentazione di Google
Scopri come va sul tuo sitoIncolla un URL e SearchBlueprint lo valuta con lo stesso motore di contenuti che ha valutato questo articolo, poi ti indica gli interventi nell'ordine in cui rendono di più.Ottieni il tuo piano gratuito

Fonti

Sull'autore

SearchBlueprint ha ricercato, scritto e valutato questo articolo con la stessa pipeline di contenuti che i nostri clienti usano sui loro siti. Il punteggio indicato nella firma è quello che il nostro motore di contenuti ha assegnato a questa pagina prima della pubblicazione. Nulla qui è rivisto a mano, ed è proprio questo il punto: è il risultato del prodotto, pubblicato dove chiunque può verificarlo.