Robots.txt: cos’è, a cosa serve e come strutturarlo

In ambito ottimizzazioni SEO degli aspetti tecnici di un sito web, il giusto utilizzo del file robots.txt può risultare importante, soprattutto quando si vuole risparmiare crawl budget (tempo che il crawler dedica alla scansione di un sito), valorizzando le sezioni più rilevanti.

Vediamo dunque cos’è il robots.txt, alcuni accenni sulla sintassi, come creare il file, come servirsene in modo corretto e come verificare l’esattezza delle direttive inserite.

Indice

Cos’è il file robots.txt

Il robots.txt è un file testuale frutto di uno standard (il protocollo di esclusione robots) lanciato nell’ormai lontano 1994. Attraverso il file robots.txt, i webmaster di un sito web possono indicare ai vari crawler (dei motori di ricerca, ma non solo) quali parti del sito stesso possono scansionare e quali invece no.

File robots.txt

All’interno del file robots.txt viene individuato un soggetto (un determinato bot, o anche tutti quanti) e viene fornita un’istruzione, che può essere di accesso consentito, oppure negato (a breve vedremo diversi esempi che renderanno tutto più chiaro).

Il robots.txt è espressione di un protocollo che viene definito consultivo. Che significa? I bot non sono tenuti a seguire le direttive contenute nel file.

Mentre i crawler noti e affidabili (come quelli di Google o di Bing) recuperano il file e ne rispettano le direttive, altri potrebbero non essere così rispettosi. Ad esempio, è molto improbabile che i bot creati per fini “dannosi”, si fermino di fronte a un blocco contenuto nel robots.txt.

Lato SEO, il robots.txt è un elemento molto utile per ottimizzare i percorsi di scansione, a patto che lo si usi con cognizione di causa.

Prima di vedere come creare e organizzare il file robots.txt, facciamo subito un esempio di utilizzo “virtuoso” dal punto di vista SEO.

Siamo i webmaster di un portale di notizie e approfondimenti (che chiameremo esempio.it). All’interno del sito abbiamo un’ampia sezione dove pubblichiamo comunicati stampa.

Questi contenuti sono scarni o duplicati, dunque non sono strategici lato SEO. Vogliamo evitare che i bot dei motori di ricerca vadano a “perdere tempo” in questa sezione, invece di focalizzarsi sulle altre parti del portale.

Vogliamo dunque ottimizzare il crawl budget del nostro sito, escludendo dalla scansione le sezioni superflue (quella dei comunicati stampa, nell’esempio in questione).

Ecco che ci viene in aiuto il file robots.txt. Supponiamo che i comunicati “inutili” si trovino tutti pubblicati sotto il percorso: esempio.it/comunicati/. Avremo quindi:

  • esempio.it/comunicati/comunicato-numero-uno.html
  • esempio.it/comunicati/comunicato-numero-due.html
  • esempio.it/comunicati/comunicato-numero-tre.html
  • e cosi via…

La seguente direttiva all’interno del robots.txt blocca i bot a monte (tutti quanti), negando loro l’accesso all’intero percorso che contiene i comunicati:

User-agent: *
Disallow: /comunicati/

SEO tool

Sintassi e direttive del robots.txt

Approfondiamo adesso sintassi e direttive, focalizzandoci in particolare su quelle supportate da Google. Di seguito tutti i vocaboli che devi conoscere per costruire al meglio le istruzioni contenute nel file robots.txt che andrai a creare:

  • User-agent: identifica il bot specifico a cui sono rivolte le direttive di accesso. I bot noti sono identificabili anche con uno nome ben preciso (ad esempio Googlebot per il motore di ricerca di Mountain View, oppure Bingbot per Bing). Utilizzando invece l’asterisco (*), la/le direttive sono rivolte a tutti i bot;
  • Disallow: la direttiva con la quale si nega l’accesso a un determinato percorso, tipo di file o pagina specifica;
  • Allow: la direttiva che al contrario dà via libera alla scansione di una determinata pagina o directory;
  • Sitemap: si tratta di una direttiva facoltativa, ma che consigliamo di integrare nel robots.txt. Ci consente di indicare la posizione di una o più sitemap del nostro sito web. Va fornito il percorso assoluto della/e sitemap. Che significa? Se la stessa si trova al seguente indirizzo: esempio.it/sitemap.xml, dobbiamo inserire nel robots.txt il percorso url completo, ad esempio: https://www.esempio.it/sitemap.xml. Questo perché Google non presuppone l’esistenza di versioni alternative (ad esempio, con o senza www).

Chiariamo alcuni aspetti importanti sulle direttive che andiamo a inserire nel robots.txt.

  • Il nome del file di testo deve essere per l’appunto robots.txt e la posizione del file deve essere la root del sito (vale a dire la directory principale).
  • Le direttive del robots.txt sono case sensitive, ovvero fanno differenza a seconda dell’uso di maiuscole o minuscole. Dunque, massima attenzione.
  • Le direttive devono essere inserite una per riga.
  • I bot elaborano le direttive dall’alto verso il basso.
  • Il file robots.txt deve essere codificato in UTF-8 (che include ASCII)
  • Deve esistere un solo file robots.txt che regola l’accesso a un determinato sito web. Ciò non toglie che se ne possano prevedere altri specifici per eventuali sottodomini.
  • La dimensione massima “tollerata” da Google per il robots.txt è 500 KB.
  • Il file robots.txt non è obbligatorio. Se non lo inseriamo, il comportamento di default dei bot è l’accesso consentito a tutti i percorsi e le pagine.
  • Si possono inserire dei commenti nel file robots.txt, introducendoli con il carattere cancelletto (#)

Come creare un file robots.txt

Si tratta di un semplice file di testo, quindi va benissimo un editor come il classico Blocco Note di Windows. Massima attenzione invece se si va a utilizzare un elaboratore di testi.

Questi ultimi potrebbero aggiungere la propria formattazione, invalidando le regole inserite nel file robots.txt (che, come abbiamo visto sopra, deve essere codificato UTF-8).

Esempi di file robots.txt

Fatta chiarezza su direttive e regole base del robots.txt, vediamo ora alcune applicazioni concrete del file con relativi esempi.

Bloccare l’accesso a tutto il sito

Con la seguente regola si blocca l’accesso a tutto il sito (ed è rivolta a tutti i bot).

User-agent: *
Disallow: /

Bloccare l’accesso a una specifica directory

L’esempio che abbiamo già visto relativo ai comunicati stampa.

User-agent: *
Disallow: /comunicati/

Bloccare l’accesso a una specifica directory, tranne una pagina

Supponiamo invece che vogliamo bloccare l’accesso a tutto il percorso, tranne a una determinata pagina. Ecco la direttiva:

User-agent: *
Disallow: /comunicati/
Allow: /comunicati/comunicato-numero-quattro.html

Consentire l’accesso a un solo bot

Con la seguente impostazione può accedere solo Googlebot (mentre il sito web è “off-limits” per tutti gli altri).

User-agent: Googlebot
Allow: /

User-agent: *
Disallow: /

Bloccare la scansione di un tipo di file

Con la regola seguente viene bloccata la scansione di tutti i file PDF.

User-agent: *
Disallow: /*.pdf$

Bloccare la scansione degli url parametrizzati

User-agent: *
Disallow: /*?

Bloccare la scansione delle immagini da parte di Google

Google dispone di diversi crawler specifici (vedi la panoramica completa con gli identificativi). Con la seguente direttiva si blocca la scansione di tutte le immagini e la conseguente indicizzazione (Google deve effettuare il crawling di immagini e video per poterle indicizzare).

User-agent: Googlebot-Image
Disallow: /

Robots.txt su WordPress
L’immagine mostra le regole di un file robots.txt “basilare”, che viene spesso utilizzato su siti web realizzati su piattaforma WordPress.

Come testare il robots.txt

Per testare il file robots.txt possiamo seguire due strade:

  • recupero url: digitare nel browser il percorso del file e controllare che sia tutto a posto. Come abbiamo visto, il robots.txt deve trovarsi nella root principale del sito. Dunque l’indirizzo da digitare nella barra del browser sarà: esempio.it/robots.txt;
  • Tester dei file robots.txt: estremamente utile lo strumento di testing fornito da Google. Il tool infatti ci consente di effettuare “esperimenti”, in modo da capire se e cosa stiamo realmente bloccando.

Alcune note importanti sullo strumento di Google:

  1. quest’ultimo si può utilizzare solo sulle proprietà web verificate;
  2. al momento funziona solo sulle proprietà “prefisso url” e non sulle “proprietà dominio”
  3. le modifiche apportate all’interno dell’editor del tool non vengono salvate automaticamente sul file robots.txt live (bisogna modificarlo sul proprio web server).

Per approfondire, vedi anche: i migliori tool SEO.

Best practice SEO ed errori

In tema di best practice sul robots.txt, la prima domanda che ci si dovrebbe porre è: mi serve ottimizzarlo? Bloccare l’accesso a determinati percorsi deve avere un senso, rispetto anche a quanto visto, altrimenti può essere nocivo oppure sterile.

Se, ad esempio, abbiamo un sito web che conta un centinaio di pagine in tutto, pensare di “risparmiare crawl budget” può essere una preoccupazione eccessiva. Anche gli approcci di sovra-ottimizzazione sono sconsigliati, si rischia tra le altre cose di andare a bloccare qualcosa che invece deve essere lasciato libero.

Detto ciò, vediamo alcuni scopi virtuosi per i quali servirsi del file robots.txt:

  • duplicati: può essere utile per evitare la scannerizzazione di ampie sezioni con duplicati, contenuti scarni, o aree del sito non strategiche in ottica SEO;
  • ricerche interne: il robots.txt può essere usato per impedire il crawl delle pagine di risultato frutto delle ricerche interne al sito web;
  • determinati bot: se per qualsiasi ragione vogliamo impedire a determinati bot di accedere al nostro sito o a parti di esso, attraverso le direttive viste sopra possiamo procedere in modo semplice;
  • contenuti multimediali: il file robots.txt ci viene in aiuto anche nel caso volessimo bloccare la scansione di uno o più tipi di file (PDF, immagini, file di calcolo, ecc.).

Su siti web di grosse dimensioni come molti ecommerce o siti di news, le ottimizzazioni nel file robots.txt possono giovare molto, a patto siano studiate in modo consono e strategico.

Vediamo invece adesso alcuni errori tipici di presupposti riguardanti il robots.txt:

  • no index: usare il robots.txt per “non indicizzare” contenuti è probabilmente l’errore più diffuso. Il file infatti non ha quello scopo e una data pagina bloccata dal robots.txt può essere comunque indicizzata (senza meta tag) perché magari linkata all’interno del sito o all’esterno;
  • rimozioni indice: allo stesso modo il file robots.txt non è pensato per rimozioni successive dall’indice di contenuti precedentemente indicizzati.
  • bloccare risorse utili: bisogna prestare a attenzione a non impedire al bot l’accesso a risorse che possono essere utili anche per la “comprensione” di pagine e altri contenuti;
  • aree riservate: il robots.txt non deve essere usato per “nascondere” informazioni riservate all’interno del sito (tra l’altro abbiamo visto come il file sia pubblico). Per fare ciò esistono altri approcci, come, ad esempio, impostare credenziali di accesso.

Per approfondire su questo e aspetti collegati, vedi anche: come fare una SEO audit.

Conclusioni

Gli aspetti tecnici di ottimizzazione SEO sono estremamente importanti, ma possono risultare anche complessi. Se la sintassi del file robots.txt in sé non è complicatissima, l’uso strategico che se ne fa va invece ragionato con attenzione, altrimenti si rischia di commettere errori anche particolarmente impattanti.


Hai bisogno di supporto nell’analisi tecnica della SEO del tuo sito?

Attraverso l’esperienza dell’agenzia SEO Avantgrade.com, potrai fare crescere il tuo business. Analizziamo e progettiamo piano e azioni SEO su misura per te e ti affianchiamo offrendoti competenze e consulenza di alto livello. Fissa una chiamata per fare crescere il tuo progetto web.

Fissa una call

AvantGrade.com Servizi SEO

Articolo scritto in collaborazione con Francesco B.

17/12/2021
Team Avantgrade
SEO&SEM

Google Product Reviews Update di Dicembre: 6 cose da sapere

Google ha annunciato il primo dicembre 2021 un nuovo Update sulle recensioni: si tratta del secondo aggiornamento sulle recensioni di quest’anno. Il primo Google Product Reviews update era già stato introdotto a luglio 2021. Quali ulteriori novità vale la pena citare? Vediamo insieme le 6 cose…

approfondisci
16/12/2021
Team Avantgrade
SEO&SEM

Errore 500 (internal server error): cos’è e come eliminarlo

500 Internal Server Error è un errore noto a tutti i webmaster. L’errore 500 (come anche il famigerato errore 404) può avere un impatto negativo sulla user experience e sulla SEO del sito, per cui è importante indagare le cause e trovare le giuste soluzioni. Indice…

approfondisci
16/11/2021
Ale Agostini
SEO&SEM

Come Recuperare le visite SEO da Google Discover

Conosci Google Discover? Controlli le performance e il traffico del tuo sito per questo canale di comunicazione? Se la risposta è sì, potresti aver notato un calo di traffico SEO nell’ultimo periodo. Analizziamo perché e troviamo una soluzione. Google Discover: come funziona Google Discover è un servizio inserito all’interno…

approfondisci