Come creare e ottimizzare un file Robots.txt

Il file Robots.txt è un protocollo standard di esclusione dei robot che consente ai Webmaster di avere un maggior controllo su quante e quali pagine HTML far scansionare dagli spider dei motori di ricerca.

Un file di Robots.txt come ci indica la natura della sua estensione: “.txt” consiste in un normale file di testo che va caricato nella root principale di un sito web.

www.seospecial.it/robots.txt

Il file di Robots.txt è il primo file che gli spider dei motori di ricerca interrogano durante la scansione di un sito web, quindi è di fondamentale importanza ottimizzare al meglio questo file e non rischiare di escludere pagine/risorse importanti.

E’ importante sapere che tutti gli spider dei principali motori di ricerca hanno aderito alle regole generali del protocollo chiamato: “Robots Exclusion Standard”.

Però è anche bene sottolineare che il Robots.txt non è una regola ASSOLUTA: infatti questa direttiva testuale si basa sul fatto che i crawler rispettano si la convenzione – ma potrebbero non farlo! Nulla impedisce di accedere ugualmente alle risorse “escluse” dal Robots.txt.

Direttive generali del Robots.txt – disallow/allow

Un file robots.txt è generalmente composto dall’indicazione iniziale a chi sono rivolte le indicazioni che seguiranno nel file di testo, ovvero a quale User-agent richiede di scansionare le pagine del nostro sito web, attraverso la dicitura:

User-agent:

solitamente a questa dicitura iniziale si accosta sempre il simbolo * che significa: “tutti i motori di ricerca“:

User-agent:* 

successivamente all’indicazione iniziale seguono due differenti tipologie di direttive:

  • allow: “permetti”
  • disallow: “non permetti”

Attraverso queste principali direttive quindi possiamo differenziare la richiesta in base ai nomi dei crawler e indicare quali risorse desideriamo che siano scansionate.

Ecco allora degli esempi di Robotx.txt:

Blocca tutto il sito:

User-agent:*

Disallow:/

Accedi a tutto il sito:

User-aget:*

Allow:/

Escludi risorse specifiche:

User-agent:*

Disallow: /page.html

Disallow: /photo.jpg

Esclusione intere cartelle:

User-agent:*

Disallow:/folder/

Disallow:/css/

Esclusione di un crawler specifico:

User-agent: “Bot-maligno”

Disallow:/

Esclusione di un bot, gli altri no:

User-agent: Googlebot

Disallow:/

User-agent: *

Allow:/

Quindi cosa è possibile fare con un Robots.txt? Possiamo indicare ai crawler quali risorse desideriamo siano scansionate e quali no. Possiamo differenziare la richiesta in base ai nomi dei crawler.

Accedendo a questo link potete trovare una lista esaustiva dei User Agent esistenti ad oggi.

Googlebot non riesce ad accedere ai file CSS e JavaScript!

Modificare il file di Robots.txt consiste in un’operazione abbastanza delicata, bisogna porre molta attenzione a modificare il file con direttive eccessive in modo da non appesantirne troppo le sue dimensioni.

Ecco un esempio errato di come il Robots.txt di un sito web sta attualmente bloccando la scansione ai motori di ricerca file CSS E JavaScript:

Robots.tzt disallow css e javascript

Bloccare le presenti risorse può causare problemi all’indicizzazione di alcuni contenuti o addirittura “perdita di ranking”. Infatti se le risorse come JavaScript o CSS vengono bloccate in modo che Googlebot non è in grado di recuperarle, i sistemi di indicizzazione di Google non saranno in grado di vedere il sito nello stesso modo in cui lo vede l’utente.

Questo discorso è molto importante per i siti mobile, dove le risorse esterne JavaScript e CSS aiutano gli spider di Google a capire se sono pagine ottimizzate lato mobile.

Quando serve modificare il Robots.txt?

Allora come è possibile modificare il Robots.txt senza correre il rischio di bloccare risorse importanti e renderlo SEO Friendly?

La risposta a questa domanda è: “dipende!” – modificare il Robots.txt consiste in lavoro soggettivo secondo la tipologia di sito web e problematica riscontrata.

  • Partendo da un sito in costruzione, possiamo utilizzare intelligentemente il Robots.txt bloccando l’accesso a tutto il sito per tutti i motori di ricerca:

Robots.txt disallow /

Questo perché all’inizio invece di far passare Google sul nostro sito in costruzione e fargli consumare crawl budget, se google si accorge che il sito in questione è ancora in costruzione, può diminuire il numero di volte che passa a fare la scansione del nostro sito web. Per questo bisogna sempre rendere prestante al meglio il nostro sito prima del Go Live.

  • E’ utile modificare il Robots.txt per problemi di Performance riscontrati al sito web che stiamo analizzando. Succede molto spesso di attacchi intenzionali dall’esterno per ridurre le performance in termini di velocità del nostro sito web. Possiamo editare quindi il file di Robots.txt se vogliamo bloccare determinati crawler.

Infine come vedremo nel prossimo paragrafo il Robots.txt oltre ad essere deputato a bloccare l’accesso agli spider dei motori di ricerca, può essere utilizzato per contenere l’indirizzo della sitemap.xml.

Gestione file di Sitemap nel Robots.txt

E’ importante inserire il file di Sitemap all’interno del Robots.txt questo perché essendo il primo file a cui accede lo spider di Google forniamo subito le indicazioni della struttura del nostro sito web al motore di ricerca.

Ecco un esempio pratico di come inserire il file di sitemap all’interno del Robots.txt:

User-agent: *

Allow: /

Sitemap: https://www.seospecial.it/sitemap_index.xml

Quando analizzare il Robots.txt e come analizzarlo?

In generale è sempre bene controllare come primo step in ottica di ottimizzazione di un sito web il Robots.txt in modo da verificare che non stia bloccando qualche risorsa importante al fine del corretto scaricamento di pagina.

Ma come analizzare correttamente il Robots.txt?

Qui ci viene in aiuto Screaming Frog che mette a disposizione un tool per testare il Robots.txt per vedere come risponde un sito web prima di mandarlo online.

Differenza tra Robots.txt e no-index

Per capire le differenze tra la direttiva “Noindex” e la direttiva Disallow del Robots.txt, è importante capire prima il concetto tra:

Scansione (crawling) – Indicizzazione (indexing)

L’attività di Crawling o anche detta scansione è la prima attività che Googlebot esegue quando incontra una nuova pagina – solo successivamente lo spider del motore di ricerca indicizza la pagina e infine gli da una “votazione” e la posiziona (ranking).

Scansione vs. indicizzazione

Detto questo la direttiva Noindex interviene sull’indicizzazione mentre la direttiva disallow del Robots.txt interviene sulla scansione (crawling). Questo discorso significa che con la direttiva Disallow del Robots.txt si sta comunicando agli spider di non scansionare e quindi non entrare assolutamente dentro quella risorsa.

Mentre con la direttiva “Noindex”agendo a livello dell’indicizzazione vuol dire che la risorsa è già stata scansionata dallo spider ma gli si sta dicendo di non indicizzarla.

Per concludere una pagina con la direttiva “Disallow” del Robots.txt può apparire quindi all’interno nei risultati dei motori di ricerca, ecco un esempio di come la cartella /wp-admin/ bloccata dal robots.txt è comparsa indicizzata sui motori di ricerca:

disallow robots.txt

Com’è possibile notare anche nella description: “nessuna informazione disponibile per questa pagina” – significa che lo spider di Google non è riuscito ad accedere alla pagina per creare una descrizione utile da mostrare nei risultati dei motori di ricerca.

Robots.txt (disallow) e no-index insieme?

Allora come faccio ad eliminare definitivamente una pagina che si è indicizzata e che non voglio far scansionare a Google?

Se si pensa di applicare la direttiva Disallow su una pagina che presenta il Noindex – gli spider dei motori di ricerca non potendo scansionare la pagina non riescono di conseguenza neanche a vedere il Tag Noindex al suo interno, quindi: pratica inutile.

Quindi al fine di rimuovere completamente la pagina dai risultati di ricerca è necessario rimuovere dal file Robots.txt la pagina in disallow, successivamente bisognerà impedire ai motori di ricerca di indicizzare la pagina, implementando uno dei tre metodi consigliati da Google:

  1. Rimuovere la pagina direttamente dal tuo sito (e tagliare tutti i link interni che puntano verso la presente pagina);
  2. oppure utilizzare la direttiva “noindex” in modo da non farla indicizzare e vedere all’utente (ma questo comporta lo stesso la scansione e consumo di crawl budget).
2 commenti

Lascia un Commento

Vuoi partecipare alla discussione?
Fornisci il tuo contributo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.