Search Marketing

Guida all’uso del file robots.txt

Il file robots.txt è un elemento fondamentale e troppo spesso trascurato per un sito web di successo, nonché un aspetto imprescindibile di ottimizzazione SEO tecnica. In questo articolo vogliamo fornire una guida chiara, semplice ed esaustiva su che cos’è il robots.txt, come funziona e come va configurato.

Che cos’è il robots.txt?

Il robots.txt, noto anche come protocollo di esclusione robot, è uno standard definito nel 1994 che viene utilizzato dai siti web per comunicare con i web crawler.

All’atto pratico il robots.txt è un semplice file di testo (formato .txt, per l’appunto) dove vengono inserite delle indicazioni, sulla base di un semplice protocollo, che servono ad indicare ai crawler quali sono le aree del sito che si vuole e non si vuole che vengano scansionate.

Già da questa definizione possiamo capire come il robots.txt vada ad agire a livello di sito, non su singole pagine, come invece avviene per il Meta Tag Robots. Il file, infatti, fornisce indicazioni ai bot dei motori di ricerca prima ancora che questi inizino a scansionare le pagine del nostro sito web.

Breve cenno sui Crawler

I crawler, detti anche user-agent, spider o bot, sono dei sistemi software automatizzati che effettuano la scansione di pagine web. Tutti motori di ricerca, oltre a numerosi tool e strumenti online come SEMrush, hanno un proprio web crawler tramite il quale vanno a leggere i contenuti delle pagine, seguendo i link in esse presenti.

Prima che un crawler scansioni le pagine un sito dovrebbe controllare se su quel sito è presente un file robots.txt che indica eventuali aree, path o singole pagine per cui si richiede che non venga effettuata la scansione.

Tutti i principali motori di ricerca (Google, Bing, Yahoo, Yandex, etc.) tengono in considerazione le indicazioni riportate nel robots.txt. In ogni caso, è importante sottolineare che un crawler “dovrebbe” verificare la presenza di un robots.txt, ma talvolta può essere tranquillamente ignorato.

È importante anche conoscere i nomi o gli indirizzi IP dei crawler: quello principale di Google si chiama Googlebot. È disponibile anche un elenco ufficiale di tutti i bot di Google.

A cosa serve il file robots.txt?

Come scritto nel paragrafo precedente, il robots.txt è fondamentale nella fase di scansione di un sito web. Tramite le indicazioni che vengono specificate, infatti, si può indicare di non leggere una determinata pagina, oppure pagine all’interno di un determinato percorso, o addirittura l’intero sito.

Impedire che un contenuto venga scansionato significa che il motore di ricerca non potrà leggere cosa c’è all’interno di una pagina. Se non potrà leggerlo, quel contenuto non potrà mai essere indicizzato, perché non ci sono le informazioni necessarie per farlo. Per cui, se un contenuto non è indicizzato, non potrà essere posizionato, e quindi non sarà mai visibile nei risultati di ricerca.

Dove va inserito il robots.txt?

Il robots.txt è unico per ciascun sito e il protocollo richiede che venga inserito all’interno della root del sito. Se il robots.txt viene inserito in un’altra folder, o con un altro nome, questo verrà ignorato dai crawler.

nomedominio.tld/robots.txt

Facciamo un esempio pratico. Supponiamo di dover impostare il robots.txt del dominio esempio.it. La prima cosa che dobbiamo chiederci è: dove risiede il sito principale? Esistono altri sottodomini che fanno riferimento ad altri siti?

· Se abbiamo un unico dominio principale, come www.esempio.it, il robots.txt dovrà essere accessibile al seguente indirizzo: www.esempio.it/robots.txt.

· Se abbiamo due o più sottodomini, per esempio www. e shop (o qualsiasi altro sottodominio). dovremo creare due diversi robots.txt, che saranno rispettivamente: www.esempio.it/robots.txt e shop.esempio.it/robots.txt.

· Se il sito è in più lingue gestite tramite folder, come www.esempio.it/it/ per l’italiano e www.esempio.it/en/ per l’inglese, il robtos.txt deve essere unico: www.esempio.it/robots.txt.

Se inserissimo il robots.txt come www.esempio.it/it/robots.txt, il file verrebbe ignorato.

Come funziona il robots.txt?

Come precedentemente accennato, il robots.txt è un protocollo, e come tale ha delle regole e sintassi ben definite che devono essere rispettate affinché le indicazioni risultino comprensibili ai crawler. Un file robots.txt può essere composto da una o più regole, ognuna delle quali specifica se un crawler può avere accesso a un determinato path.

Le regole di sintassi del protocollo di esclusione robot

Di seguito sono riportate le regole della corretta sintassi che si devono applicare quando si vanno a specificare istruzioni nel robots.txt:

· Il robots.txt deve essere un file di testo che utilizza una codifica caratteri UTF-8;

· Il protocollo è case-sensitive, viene quindi fatta distinzione tra caratteri minuscoli e maiuscoli.

· Le istruzioni nel robots.txt sono divise in gruppi, ciascun gruppo è formato una o più regole. Un gruppo di istruzioni deve obbligatoriamente specificare lo user-agent (ovvero il nome del crawler) e i path o i singoli file a cui può/non può accedere quello specifico user agent.

· Ogni istruzione deve essere inserita in una nuova riga.

· Le istruzioni presenti nel file vengono elaborate con una logica top-down (partendo dall’alto verso il basso). A ciascun crawler si applica la prima regola più specifica che è stata inserita nel robots.txt.

· Di default, se non viene indicata alcuna restrizione, si suppone che uno user-agent possa eseguire la scansione di tutte pagine. Un robots.txt privo di indicazioni consente la scansione di tutti contenuti a tutti i crawler.

· Eventuali commenti nel file robots.txt vanno inseriti preceduti da un #.

User-agent: indicazione dei motori di ricerca

L’istruzione User-agent: indica il bot a cui va applicata la regola. Deve essere indicata come prima riga di ogni gruppo di regole. Si può utilizzare il carattere asterisco * per il prefisso, il suffisso o come intero percorso.

Vediamo qualche esempio:

# Esempio 1: bloccare la scansione di tutto il sito a Googlebot

User-agent: Googlebot

Disallow: /

# Esempio 2: bloccare la scansione di tutto il sito a tutti i bot

User-agent: *

Disallow: /

#Esempio 3: bloccare la scansione di tutto il sito a tutti i bot escluso Googlebot

User-agent: *

Disallow: /

User-agent: Googlebot

Allow: /

Disallow e Allow: regole per path, file e folder

Le istruzioni Disallow: e Allow: permettono di indicare specifici path, cartelle o file che non devono o devono essere scansionati dai bot.

· Disallow: Utilizzata per impedire la scansione. Se si tratta di un file, deve essere specificato il path completo, se si tratta di una folder, il nome dovrebbe terminare con lo slash /. È supportato il carattere asterisco * per il prefisso, il suffisso o l’intero percorso.

· Allow: Utilizzato per consentire la scansione di file o sottosezioni appartenenti a sezioni non consentite tramite Disallow. Se si tratta di un file, deve essere specificato il path completo, se si tratta di una folder, il nome dovrebbe terminare con lo slash /. È supportato il carattere asterisco * per il prefisso, il suffisso o l’intero percorso.

Vediamo alcuni esempi pratici:

# Impedisci a Googlebot di accedere alle folder /test/… e /demo/..ma consenti l’accesso a demo/sub-demo/

User-agent: Googlebot

Disallow: /test/

Disallow: /demo/

Allow: /demo/sub-demo/

#Impedisci a tutti i bot la scansione dei file .gif

User-agent: *

Disallow: /*.gif$

#Impedisci al bot di Bing la scansione di tutte le URL contenenti il parametro ?p=

User-agent: Bingbot

Disallow: /*?*p=

Quali file non vanno mai esclusi

La domanda sorge spontanea: cosa devo bloccare nel robots.txt del mio sito? Quali sono i file utili e quali no? Per rispondere a questa domanda, bisogna sempre chiedersi “quali contenuti del mio sito voglio che vengano indicizzati e resi visibili tra i risultati di ricerca?”. In linea generale è possibile comunque affermare che non devono mai essere escluse tramite file robots:

· Le pagine HTML di contenuti che vogliamo che siano visibili nei risultati di ricerca;

· Le immagini di contesto e proprietarie che vogliamo possano comparire tra i risultati di Google Immagini;

· I file .CSS che concorrono al rendering delle pagine, in quanto vengono utilizzate dai motori di ricerca;

· I file .JS che concorrono al rendering delle pagine, in quanto vengono utilizzate dai motori di ricerca;

Indicazione della sitemap.xml

La direttiva Sitemap: serve ad indicare la locazione di una Sitemap relativa al sito. Deve essere un URL completa e specifica al sito a cui fa riferimento il robots.txt. Possono essere specificate tutte le URL delle sitemap relative al sito.

Esempio: Supponiamo di avere due sitemap chiamate “sitemap-category.xml” e “sitemap-pages” nel nostro sito https://www.esempio.it. Le sitemap dovranno essere indicate nel robots come:

Sitemap: https://www.esempio.it/sitemap-category.xml

Sitemap: https://www.esempio.it/sitemap-pages.xml

Direttive non supportate da Google

Esistono altre direttive che possono essere inserite secondo sintassi nel robots.txt, che tuttavia non vengono più supportate dal principale motore di ricerca in Italia (e nel mondo):

· Crawl-delay: permetteva di specificare quanti secondi dovessero passare tra una richiesta del crawler e la successiva. Non viene più considerata da Google, a differenza Bing e Yandex. Il consiglio è quello di evitarne l’impostazione a meno di motivazioni particolari.

· Noindex: veniva utilizzata per indicare percorsi o pagine che si voleva escludere dall’indicizzazione (che, come spiegato, è una cosa diversa rispetto alla scansione). Tuttavia, Google ha dichiarato pubblicamente nel settembre 2019 che la direttiva non è supportata e non viene considerata.

· Nofollow: veniva utilizzata per indicare al motore di ricerca di non seguire i link all’interno di specifiche pagine o di pagine in un particolare percorso. Come per il Noindex, Google ha dichiarato nel settembre 2019 che la direttiva non viene considerata.

Come generare un robots.txt

Il robots.txt può essere creato tramite un qualsiasi editor di testo, l’importante è che il file sia generato con codifica caratteri UTF-8 standard. Se si utilizza Windows, l’App Blocco Note è ideale per la creazione o modifica del file.

H3: Configurazione base robots.txt

È difficile definire a priori una corretta configurazione di base del robots.txt: le possibili impostazioni variano radicalmente sulla base del CMS utilizzato, della tecnologia di sviluppo e dei contenuti che vengono caricati.

Se non siete esperti, vi raccomandiamo fortemente di verificare innanzitutto che il robots non blocchi la scansione del vostro sito, e quindi che non sia configurato così:

User-agent: *

Disallow: /

In tal caso, se volete che il sito venga indicizzato, modificatelo rimuovendo le indicazioni presenti e lasciando il file bianco. Di default, infatti, se non ci sono restrizioni i crawler cercheranno di scansionare le pagine.

Una buona configurazione base per un sito dovrebbe avere le seguenti caratteristiche:

User-agent: *

Disallow: # inserire nei Disallow i path delle aree di back end o servizio

Allow: #eventuali sottocartelle o file di quelle bloccate con i precedenti disallow che contengono contenuti o risorse utili

Sitemap: URL-della-sitemap

Robots.txt con Yoast SEO

Il famoso plugin Yoast SEO per Wordpress genera un robots.txt di default che è valido per la grande maggioranza dei siti sviluppati con questa piattaforma. L’impostazione base di default è la seguente:

User-agent: *

Disallow: /wp-admin/

Allow: /wp-admin/admin-ajax.php

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

Come si può vedere, viene bloccata la folder /wp-admin/ relativa alla sezione di back-end del sito, ad eccezione del file admin-ajax.php.

Tuttavia, se aveste necessità di modificare il vostro file, lo potete fare senza problemi: vi basterà aprire l’interfaccia del plugin Yoast, quindi andare nella voce di menu “Strumenti” e poi cliccare su “Modifica file”.

A questo punto, dopo aver effettuato le modifiche, cliccate su “Salva le modifiche al robots.txt” e il gioco è fatto!

La modifica al robots può essere fatta anche tramite server o con l’accesso FTP, tuttavia questa tecnica è consigliata solo per utenti più esperti.

Robots.txt generator online

Esistono numerosi tool online gratuiti che aiutano a creare il robots.txt. Sono utili in quanto permettono a chi non è esperto di evitare di commettere errori di sintassi che potrebbero rendere vano lo sforzo di configurazione.

Diffidate da tool automatici a pagamento o che generano da soli file robots che potrebbero non essere adatti alla struttura o al CMS del vostro sito, il rischio sarebbe di provocare più danni che benefici.

Il nostro consiglio è quello di utilizzare risorse ufficiali e affidabili, come la documentazione per la creazione di un robots.txt di Google e un semplice strumento di editing di testo come l’App Blocco Note su Windows.

Tester robots.txt

Esistono innumerevoli strumenti gratuiti di test del robots.txt online. Ciò che vi raccomandiamo fortemente è di affidarsi sempre a strumenti autorevoli e ufficiali, come lo strumento di test del robots.txt di Google.

Per poterlo utilizzare bisogna avere accesso alla proprietà di Google Search Console del sito web. Qui sarà quindi possibile verificare le impostazioni attualmente live e provare ad effettuare modifiche (che per essere definitive dovranno però essere impostate nel file robots.txt sul server o tramite plugin del CMS).

Per fare un check, basterà inserire il path di una URL e verificare se le regole impostate consentono o meno la scansione di quella pagina.

Conclusioni

Abbiamo visto che cos’è, a che cosa serve, come funziona un file robots.txt e perché è fondamentale una corretta impostazione delle direttive in esso presenti. Non vi resta che verificare il file presente sul vostro sito per assicurarvi che permetta la scansione dei contenuti importanti.

Se siete interessati a far crescere la visibilità sui motori di ricerca del vostro sito, oppure avete in mente un nuovo progetto di successo da lanciare sul web, contattateci per creare insieme una Strategia SEO di successo!

Siamo parte del gruppo

Datrix SPA
Insieme a

© 2021 ByTek SRL - P. IVA: 13056731006 - REA: MI - 2562796 - Privacy Policy - Cookie Policy