Il file robots.txt


Comprendere l’importanza SEO della creazione di un robots.txt corretto e ben strutturato

01/02/2018

 

Nel lungo processo di ottimizzazione SEO di un sito, si entra inevitabilmente in contatto con un file di testo particolare, chiamato robots.txt. Questo file viene spesso, erroneamente, sottovalutato da molti web developer. Esso infatti costituisce uno dei principali trampolini di lancio per l’indicizzazione sui motori di ricerca.

Cosa sono i robots?

Prima di trattare nel dettaglio il file robots.txt è opportuno comprendere cosa sono i “robots”. Con questo termine si indicano tutti i bot, tecnicamente chiamati spiders, utilizzati dai principali motori di ricerca per analizzare, valutare ed indicizzare correttamente i siti web. Questi bot scansionano migliaia di siti contemporaneamente, come se possedessero tante zampe come i ragni, da qui il nome spiders.

A cosa serve il file robots.txt?

Il file robots.txt, che deve obbligatoriamente trovarsi nella root del nostro dominio (es. http://www.tuosito.it/robots.txt) è uno strumento molto potente e versatile per gestire il comportamento degli spiders in un sito web. In particolare serve per controllare quali contenuti sono accessibili dai bot dei search engines. Riassumento il robots.txt ci permette di:

  • Prevenire l’accesso agli spiders su determinati contenuti che devono rimanere protetti (aree admin, sezioni private come profili utente etc.)
  • Bloccare l’accesso a script, file di codice o elementi strutturali del sito.
  • Evitare l’accesso a contenuti duplicati, come le versioni stampa delle pagine HTML o versioni diverse di cataloghi prodotti.
  • Evitare l’accesso automatico alle Sitemap da parte degli spiders.

Il file robots.txt, come indicato dal nome stesso, deve essere puramente in formato txt (non quindi in formato HTML o simili).

Cosa succede se una pagina nega l’accesso agli spiders?

Una pagina bloccata dal robots.txt essenzialmente non viene scansionata. Non passa quindi nessun SEO juice (nessun valore SEO), nessun link authority e non genera nessun backlink. Bisogna tuttavia ricordare che la pagina o le pagine bloccate dal robots.txt potrebbe comunque comparire sui motori di ricerca (anche se con bassissima probabilità) se linkata direttamente da altre pagine non bloccate. In questo raro caso tuttavia non presenterà, nella pagina dei risultati di ricerca, nessun contenuto o metatag associato, proprio perchè i bot non possono leggere il suo contenuto.

E’ importante ricordare anche che i sottodomini e i file che risiedono in un https server necessitano di un loro robots.txt (posizionato sempre nella radice del dominio).

La sintassi corretta del robots.txt

La sintassi base di un robots.txt è solitamente semplice. Devono essere specificati essenzialmente il nome del bot in questione (che varia a seconda del search engine es. Googlebot) denominato User-agent e l’azione associata ad esso che vanno indicati nelle linee successive. Una delle azioni principali che si possono indicare è la Disallow che blocca il contenuto ad essa collegato.

Vediamo nel dettaglio un esempio di semplice robots.txt:

Copy to Clipboard
Copy to Clipboard
Copy to Clipboard

 

Alcune precisazioni importanti sulla sintassi:

  • User-agent e Disallow devono essere separate da una linea bianca.
  • Il simbolo # serve per scrivere i commenti nel robots.txt.
  • Le directory e i nomi dei file sono case-sensitive.
  • Una istruzione specificata per un singolo bot fa si che esso ignori le azioni espresse da un’azione settata su ALL (*).

Uno dei problemi principali da gestire tramite robots.txt è quello che si presenta durante i redirect in caso di certificato SSL. Infatti come specificato prima una risorsa HTTP ha un robots.txt diverso dalla sua associata HTTPS.

Si avrà quindi per esempio:

  • HTTP
Copy to Clipboard
  • HTTPS
Copy to Clipboard

Ciò indica un comportamento diverso per i due tipi di protocollo. Nel primo tutti i contenuti sono bloccati mentre nel secondo sono tutti “liberi”.

Altri elementi di sintassi

Crawl-delay: supportato da Google, Bing e Ask precisa al crawler un determinato tempo di attesa che deve intercorrere prima della scansione.

La sua sintassi è la seguente:

Copy to Clipboard

Pattern matching: supportato da Google e Bing precisa al crawler un determinato percorso di cartelle di cui si vuole specificare un’azione (es disallow).

La sua sintassi è la seguente:

Copy to Clipboard

Allow: supportato da Google e Ask precisa al crawler esegue una precisazione al disallow, indicando quali cartelle rendere accessibili ai crawler nonostante un disallow.

La sua sintassi è la seguente:

Copy to Clipboard

Noindex: questo comando specifica ai crawler di non indicizzare completamente una pagina precisa.

La sua sintassi è la seguente:

Copy to Clipboard

Sitemap: questo comando specifica ai crawler il percorso della Sitemap XML.

La sua sintassi è la seguente:

Copy to Clipboard

Conclusioni

Il robots.txt è un file molto importante da considerare durante l’ottimizzazione SEO, per permettere la corretta scansione di un sito web da parte dei bot dei motori di ricerca. Esso deve essere costruito correttamente e tutte le direttive devono essere rispettate per evitare di incorrere in penalizzazioni di posizionamento.