Guida completa al file robots.txt

guida-completa-al-robotstxt
Il robots.txt è un file di testo che si trova all’interno della root del proprio sito web e contiene una serie di indicazioni utili ai motori di ricerca.

Se da una parte i meta tag Google suggeriscono informazioni rispetto alle singole pagine, questo file viene letto dai Crawler ed utilizzato per organizzare la scansione dei contenuti di un sito web.

Per individuarlo basta visitare l’indirizzo: www.tuodominio.it/robots.txt.

Ottimizzare il file robots.txt può portare ad un miglioramento della SEO (acronimo di Search Engine Optimization) ed essere di conseguenza più visibili su Google.

Cos’è e come funziona il file robots.txt?

Il robots.txt è un file che contiene una serie di istruzioni utili agli Spider per scandagliare le pagine web. Le direttive presenti al suo interno ti consentono di fornire accesso a determinate cartelle e risorse oppure impedirne la scansione.

Attraverso le indicazioni presenti nel robots.txt, ad esempio, puoi suggerire ad un Crawler di leggere una cartella oppure vietare l’accesso ad un’altra.

Questa operazione viene chiamata “indicizzazione” e può essere eseguita esclusivamente dagli Spider. Non bisogna quindi confonderla con il “posizionamento” che è il lavoro svolto dal SEO Specialist allo scopo di migliorare la visibilità sui motori di ricerca.

Il robots.txt svolge un ruolo molto importante nell’ambito dell’ottimizzazione per i motori di ricerca poiché indica quali contenuti dovranno essere sottoposti a scansione e come farlo.

Quando di parla di ottimizzazione SEO sono moltissimi i parametri che Google prende in considerazione. Il robots.txt gioca un ruolo fondamentale poiché ti permette di guadagnare posizioni nei risultati organici.

Un utilizzo ottimale impedisce di scansionare le parti non importanti, evitare i contenuti duplicati e aiutare i crawler nella scansione delle pagine.

Durante l’analisi, sopratutto nei siti di grandi dimensioni, spesso capita che non tutte le risorse presenti vengano aggiunte all’indice. Questo succede perché i Crawler assegnano a ciascun sito un “Crawl Budget“, ovvero una quantità di tempo che viene dedicato alla scansione ed indicizzazione dei contenuti.

Sarà quindi necessario lavorare per ottimizzare il Crawl Budget in modo da liberare i Robots dalla scansione dei contenuti non importanti.

Se lo Spider ha più tempo a disposizione, andrà a scandagliare altre pagine e provvederà ad inserirle nel suo indice.

Cosa sono i Crawler, Robots e gli Spider?

Crawler, Robots e Spider sono sinonimi che rappresentano un software in grado di analizzare in profondità la struttura del sito e della pagine. Una volta effettuata la scansione ed aver letto il contenuto della pagina, questa viene inserita all’interno di una lista e se ritenuta idonea inviata all’interno dell’indice del motore di ricerca.

Tieni presente Google e gli altri motori di ricerca hanno la facoltà di seguire le direttive presenti nel file, ma non l’obbligo.

Esistono diversi Spider, ognuno dei quali è di proprietà del rispettivo motore di ricerca. Ecco i principali:

  1. Googlebot-Desktop e Googlebot-Mobile – (Crawler di Google per la scansione dei contenuti desktop/mobile)
  2. Bingbot – (di proprietà di Bing)
  3. Yandex – (motore di ricerca russo)
  4. Baiduspider – (motore di ricerca cinese)

Pertanto, quando scrivi le direttive all’interno del file robots.txt, devi sempre indicare a quale Crawler ti stai riferendo.

Esempi di come scrivere un file robots.txt

Adesso che hai capito cos’è il file robots.txt, è arrivato il momento di capire come scrivere le giuste direttive al suo interno. Ecco i comandi da utilizzare:

User-agent: *

Disallow: /wp-admin/

Disallow: /privacy-and-cookie-policy/

Sitemap: https://www.miosito.it/sitemap.xml

Nell’esempio qui sopra puoi vedere un classico file robots.txt presente nei siti web sviluppati con WordPress; analizziamo le varie voci:

  • User-Agent: – Indica l’agente (ovvero lo Spider) a cui sono rivolte le istruzioni. L’asterisco (*) indica che è rivolto a tutti quanti.
  • Disallow: – Il termine Disallow segnala al Bot che non può accedere alla pagina “privacy-and-cookie-policy”
  • Sitemap: – Anche se non obbligatorio, è buona prassi inserire l’indirizzo della sitemap.xml all’interno del robots.txt allo scopo di aiutare la scansione delle risorse presenti.

Tutti il resto dei contenuti (cartelle, testi, immagini, video, pdf) che non sono indicati come “Disallow” di default assumono il valore di “Allow” il quale indica che possono essere scansionati.

Vediamo adesso un esempio in cui vogliamo negare l’accesso ad una specifica cartella:

User-agent: *

Disallow: /cartella_privata/

In questo caso tutti i Bot hanno accesso al sito tranne che alla “cartella_privata”.

Infine un ultimo esempio nel quale soltanto Googlebot Desktop e Googlebot Mobile hanno accesso alla cartella “privata_google”. Ecco le istruzioni da utilizzare:

User-agent: Googebot-Desktop

Allow: /privata_google/

User-agent: Googebot-Mobile

Allow: /privata_google/

User-agent: *

Disallow: /privata_google/

Bisogna prestare massima attenzione all’asterisco (*) ed allo slash(/). Il primo indica che quella direttiva è valida per chiunque, il secondo limita l’accesso a tutti i contenuti al suo interno.

Come creare e verificare un file robots.txt?

Un file robots.txt può essere creato in vari modi. Quello più semplice è utilizzare un software come Notepad oppure Word, scrivere le istruzioni che si vuole comunicare e salvare il file nel formato txt. Adesso non ti resta che verificare se le direttive sono corrette.

Personalmente utilizzo Screaming Frog, un tool professionale in grado di offrirti una serie di funzionalità avanzate utili per identificare errori e controllare possibili blocchi rispetto ai vari Spider.

Best practice per il file robots.txt

Facciamo adesso un piccolo riassunto delle informazioni indispensabili per permettere al robots.txt di essere configurato correttamente.

  • Affinché possa essere letto correttamente, deve trovarsi all’interno della cartella principale del sito web. Per permettere la scansione di un sottodominio come ad esempio blog.miosito.it, va creato un’altro file robots.txt da inserire nella root su blog.miodominio.it/robots.txt.
  • Ricorda che questo file è “case sensitive” pertanto distingue le maiuscole dalle minuscole. La corretta denominazione è tutta minuscola (robots.txt).
  • Essendo visibile pubblicamente digitando l’url, tutti possono vedere le informazioni presenti al suo interno; meglio quindi non inserire dati sensibili.
  • Ti consiglio di inserire sempre l’url della sitemap.xml in modo da instradare gli Spider nella lettura dei contenuti.
  • Il carattere “$” viene utilizzato per applicare una regola ad un’url che termina con una stringa specifica. Per esempio, se vuoi bloccare l’accesso a tutti gli url che terminano con “exe”, puoi inserire questa direttiva: “Disallow: /*.exe$”.
  • Puoi usare l’hashtag “#” per inserire commenti all’interno del file. Esempio: “# questo è un esempio di commento”.
  • Non utilizzare questo file per nascondere dati sensibili nei risultati di ricerca. Questo perché altre pagine potrebbero comunque collegarsi alla pagina contenente le informazioni che vuoi nascondere aggirando così le direttive inserite. Questo comporterebbe comunque una indicizzazione della pagina sulle SERP.
  • Se effettui delle modifiche al robots.txt, ricordati di segnalarlo a Google tramite la Search Console.

Differenza tra robots.txt e x-robots-tag

A differenza del robots.txt che è un semplice file di testo, l’x-robots-tag è un un’intestazione HTTP inviata da un server web. Questo non viene quindi inserito nell’HTML delle pagine.

La sua configurazione dipende dalla tipologia di server e dalle direttive che si vogliono impartire.

Prendiamo come riferimento un server Apache che gira in ambiente Linux; il modo più semplice per scrivere direttive al file di intestazione, è quello di modificare il file .htaccess che si trova nella root del sito web.

Ecco come potrebbero essere le istruzioni contenute all’interno dell’x-robots-tag

X-Robots-Tag: Googlebot-Mobile: nofollow

X-Robots-Tag: Baiduspider: noindex, nofollow

In questo esempio puoi vedere una risposta HTTP con un’intestazione X-Robots-Tag la quale comunica a Googlebot-Mobile di applicare il tag “nofollow” su tutti i collegamenti presenti nella pagina. La seconda direttiva invece segnala a Baiduspider di non indicizzare la pagina e non seguire i link.