Robots.txt e Google Webmaster Tools

robots.txt

Come funziona un crawler

Un crawler – altrimenti detto robot, spider o bot – è un software che, in modo sistematico, cerca e analizza contenuti testuali all’interno una rete per conto di un motore di ricerca allo scopo di inserirli in un indice consultabile. Normalmente questi software cercano di scovare il maggior numero possibile di dati  da catalogare ed è quindi opportuno indirizzare le loro scansioni.

Come sappiamo infatti, molto spesso all’interno di un sito sono presenti pagine che non si vuole appaiano nei risultati dei motori di ricerca. Il file robots.txt ci aiuta nel compito di regolamentare le visite dei crawler.
La prima cosa che fa uno spider quando visita un indirizzo è cercare il file robots.txt nella directory principale. Una volta trovato, ne legge il contenuto e ne segue le indicazioni, sempre a patto che non si tratti di malware robots perché in tal caso il file verrebbe ignorato.

Essendo un file pubblico possiamo facilmente intuire che il suo scopo non è nascondere informazioni quanto renderle o meno indicizzabili.
robots.txt non dispone di un vero e proprio standard, almeno non sulla carta. Alcune aziende però, come Google, Yahoo e Microsoft avevano iniziato a muoversi in questa direzione già qualche anno fa includendo il supporto al wildcard, alle sitemaps, ai meta tags, ecc…

Creare un file robots.txt

Per creare un robots.txt non serve altro che un editor di testo basilare, come il blocco note di Windows. I campi fondamentali da includere sono l’User-agent e la regola ad esso applicata.

L’User-agent non è altro che il nome del crawler: googlebot per Google, slurp per Yahoo!, scooter per Altavista, ecc… Solitamente anziché specificare un singolo nome si preferisce inserire un asterisco ad indicare che tutti i crawler devono seguire le regole riportate.

I comandi che possiamo dare ai bot sono Allow (permette l’indicizzazione) e Disallow (impedisce l’indicizzazione), ma dato che di default gli spider analizzano ogni cosa, disallow è  il più utilizzato tra i due. Nel file possiamo includere anche l’url della sitemap, ottenendo un codice di questo tipo:

User-agent: *
Disallow:

Sitemap: http://www.miosito.com/sitemap.xml

Con questo comando si specifica che tutti gli spider (User-agent: *) devono indicizzare l’intero sito (“Disallow: ” che equivale a “Allow= /” dove / indica tutto il contenuto della root).
Per ogni User-agent è possibile specificare più regole ognuna delle quali deve essere posta su una differente riga:

Scrorretto:

User-agent: *
Disallow: /cartella1/ /cartella2/

Corretto:

User-agent: *
Disallow: /cartella1/
Disallow: /cartella2/

In presenza sia di comandi generici che specifici, un crawler seguirà sempre quelli più specifici ignorando gli altri:

User-agent: *
Disallow: /cartella1/
Disallow: /cartella2/

User-agent: googlebot
Disallow: /cartella3/

Anche se non si hanno particolari esigenze o si desidera indicizzare l’intero sito è comunque consigliabile creare sempre il file robots.txt; prima di tutto per evitare errori 404 da parte del log del server per il file mancante e in secondo luogo per una questione di chiarezza verso il crawler.

Una volta creato va inserito nella root del sito. Per controllare che il file sia stato caricato correttamente controllare l’indirizzo www.miosito.it/robots.txt (/robots.txt si trova sempre dopo l’estensione del dominio).

Il file robots.txt è un’alternativa sbrigativa e meno precisa al meta tag robots capace invece di evitare l’indicizzazione di una pagina senza per questo bloccare la distribuzione del link juice (valore distribuito sui link in uscita che comprende il PageRank).

<html>
<head>
<title>...</title>
<meta name="robots" content="noindex, follow">
</head>
 

Esempi di comandi

Indicizzare l’intero sito:

Disallow: 

Inserendo uno slash ( / ) dopo Disallow si esclude l’intero sito dall’analisi dei crawler:

Disallow: /

Per evitare l’indicizzazione di una cartella e del suo contenuto bisogna indicarne il percorso:

Disallow: /documenti/

Per escludere una pagina la dicitura è la stessa. Il percorso deve essere corretto: nell’esempio che segue, il file è nella root:

 Disallow: /pagina.html

Per esclude uno specifico file inserito in una cartella:

 Disallow: /immagini/foto.jpg

Utilizzare un asterisco per indicare sequenze di caratteri corrispondenti. Nell’esempio si blocca l’accesso a tutte le sottodirectory che iniziano con “privato”:

Disallow: /privato*/

Sempre con l’utilizzo dell’asterisco blocco l’accesso a tutti gli URL che presentano un punto interrogativo tra due stringhe:

Disallow: /*?

Per specificare la corrispondenza della fine di un URL, utilizza il carattere $. Nell’esempio si bloccano tutti gli URL che terminano con .jpg:

Disallow: /*.jpg$

Utilizzare Disallow in combinazione con Allow per evitare indicizzazioni di pagine duplicate o non idonee. Ad esempio se nell’url di una pagina il punto interrogativo ( ? ) indica un ID di sessione, e quindi lo si vuole escludere dall’indicizzazione, ma allo stesso tempo è presente in indirizzi di pagine che si vogliono includere, è necessario indicare la seguente istruzione:

User-agent: *
Allow: /*?$
Disallow: /*?

Con questo comando bloccheremo qualsiasi indirizzo che presenterà un punto interrogativo compreso tra due stringhe mentre consentiremo l’indicizzazione di quelli che termineranno con quel carattere.

Strumenti per analizzare o creare un robots.txt

Google Webmaster Tools offre diversi strumenti per la gestione del file robots.txt e il controllo dei risultati delle scansioni dei crawler.
Google Webmaster Tools - Crea file robots.txt

  • Per creare da zero il file è sufficiente compilare il modulo preimpostato che trovate nella sezione Configurazione sito / Accesso crawler -> Genera file robots.txt, indicando regole specifiche per ogni User-agent
  • Per vedere, invece, il file associato automaticamente ad un sito già inserito in Webmaster Tools seguire il percorso Configurazione sito / Accesso crawler -> Analizza robots.txt
  • Per trovare eventuali errori di scansione del sito visitare la pagina Diagnostica / Errori di scansione
  • Poiché googlebot non supporta direttamente il comando delay, per modificare il tempo impiegato per la scansione del sito bisogna modificare i parametri nella sezione Configurazione sito / Impostazioni -> Velocità di scansione. Con tempo di scansione si intende la velocità con cui googlebot invia le richieste durante la procedura di scansione e non la frequenza con cui esegue questa operazione. Di default Google determina la velocità consigliata in base al numero di pagine del sito

Plugin per WordPress

Come sempre WordPress viene in nostro aiuto con diversi plugin più o meno completi:

  • iRobots.txt SEO è un plugin ampiamente customizzabile che genera un file robots.txt virtuale
  • KB Robots.txt include semplicemente un box dove scrivere i comandi per i crawler
  • WordPress SEO by Yoast questo plugin gestisce sia il file robots.txt che l’indicizzazione dei singoli post e pagine attraverso il meta tag robots
Commenta

Commenti

  1. Wikingo ha detto:

    Ciao, grazie per il tuo post!

    Io ho un piccolo problema: Google mi indicizza “troppo” la mia sitemap.
    La sitemap è in .xml, e l’ho generata da xml-sitemaps.com

    Praticamente alcune parole, come ad esempio l’ora di inserimento di una pagina nella sitemap, vengono indicizzati molto togliendo potere ad altre query per le quali avevo indicizzato il sito.

    Comprendi che la cosa è fastidiosa, ora mi chiedo:
    come potrei fare per fare vedere la sitemap, ma non farne indicizzare le parole all’interno?

    Spero mi potrai aiutare,
    grazie
    Stefano

  2. Giulia Ballarin ha detto:

    Onestamente non ho capito il problema e la sitemap del tuo sito mi pare corretta. Puoi spiegarti meglio?

  3. Antonio ha detto:

    Ciao, è stato erroneamente caricato sul nostro sito un robots.txt che disabilita la scansione dell’intero sito. Abbiamo già provveduto a toglierlo e sostituirlo con un robots corretto, ma google aveva già preso come buono quello errato.
    Quanto tempo ci vuole prima che venga rifatta la scansione e quindi letto il robots.txt corretto.

    Grazie e complimenti per la chiarezza del tutorial.

  4. Giulia Ballarin ha detto:

    Ciao, non conosco l’esatta frequenza di scansione di Google, però non penso impieghi molto per ritornare sul tuo sito.
    Ma il sito è presente negli indici di Google? lo puoi verificare scrivendo nella barra di ricerca di Google: site:http://www.tuosito.it

    In ogni caso puoi sempre verificare lo stato del tuo robots.txt andando su “Strumenti per webmaster” (http://www.google.com/webmasters/tools) nella sezione “Salute” > “URL bloccati”.
    Qui puoi trovare la data in cui è stato scaricato il robots.txt l’ultima volta, gli url bloccati e il contenuto del file che Google ha analizzato.

    Spero di esserti stata d’aiuto.

  5. Nicho ha detto:

    Ciao Giulia, ho una domanda forse stupida ma a cui non trovo risposta:
    entrando in webmaster di google sembra che il mio file robot sia presente anche se molto scarno… il problema e che se voglio modificarlo es entro nella directory di aruba non trovo il robot.txt…?

    Come è possibile che venga visto da google ma non lo trovo nel filemanager di Aruba..?
    Potrebbe essere che viene generato da qualche plug-in ad esempio wordpress SEO by Yoast e quindi non lo trovo nel filemanager..?
    Se creo un robot.txt nuovo con le tue indicazioni poi lo carico manualmente su aruba creo qualche danno o sostituisco semplicemente il precedente..?

    Ti sarei molto grato se potessi aiutarmi…

    • Simona ha detto:

      Ciao Nicho,
      Wordpress dispone già di un file virtuale robots.txt, che tu non lo puoi vedere senza aver installato un plugin. Ti sconsiglio di caricare manualmente un file robots.txt nella root, invece ti suggerisco il plugin WP Robots Txt. Dopo l’installazione vai sulla Dashboard/Impostazioni/Lettura e troverai i campi vuoti per poter aggiungere i commandi.
      Un esempio di file robots.txt

      User-agent: *
      Disallow: /wp-admin/
      Disallow: /wp-includes/
      Disallow: /*? #non indicizza le query di ricerca e le session ID

      Sitemap: http://www.nomesito.it/sitemap_index.xml #la sitemap di WordPress SEO by Yoast

      • Giulia Ballarin ha detto:

        Con un plugin è ovviamente più semplice, ma non mi pare ci siano controindicazioni nel crearlo manualmente. Se per qualche motivo non dovesse riuscire a modificarlo tramite plugin, rimane comunque questa una soluzione.

  6. Giulia Ballarin ha detto:

    Si, è possibile che esista un robots.txt virtuale. Prova a creare manualmente il file ed inserirlo via FTP nella root del sito, dovrebbe sovrascriverlo. Se non riesci, scarica un plugin e con quello crea il file.

  7. Maurizio Quaranta ha detto:

    Buongiorno
    Volevo chiedere cortesemente se posso utilizzare Disallow: / per eliminare articoli di testate giornalistiche che riguardano fatti di due anni fà e che ogni qualvolta digito o digitano il mio nome compaiono.

    • Giulia Ballarin ha detto:

      Salve,
      il disallow dà solo indicazione (non è una vera e propria regola) agli spider di non considerare determinate pagine, ma a quanto ho capito le pagine di cui parliamo sono già indicizzate. Consiglio di escludere dai robots tali pagine, di non includerle nelle sitemap e, visto che sono già indicizzate, utilizzare lo strumento “Rimozione URL” da Strumenti per i Webmaster di Google (https://support.google.com/webmasters/answer/1663419).
      Spero di essere stata d’aiuto.

  8. Carlo ha detto:

    Ciao Giulia, io se inserisco il mio sito su google mi compare la frase con scritto e i file robots.txt del mio sito non sono aggiornati, come posso fare per aggiornarli? Ovviamente anche pagando qualcuno che lo faccia visto che io non è che me ne capisco molto.
    Il sito web è http://www.immosanremo.com
    Saluti

    • Giulia Ballarin ha detto:

      Intendi dire in Google Webmaster Tools? Non capisco cosa significhi “non aggiornato”, però ho notato che il tuo file esclude dall’indicizzazione praticamente tutto il sito.

  9. William ha detto:

    Ciao Giulia, complimenti per il post! ho provato a scrivermi da solo il file robots.txt seguendo quello che hai scritto, ma poi negli strumenti per Webmaster google mi dice che è sbagliato… alla fine ho risolto con questo strumento: http://toolset.mrwebmaster.it/seo/genera-robots-txt.html
    spero possa essere utile anche ad altri come a me. ciao

Commenta

Facebook
Articoli popolari
Articoli recenti