Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Il file robots.txt: escludere i motori indesiderati

Come utilizzare il file robots.txt per escludere i motori e i software indesiderati
Come utilizzare il file robots.txt per escludere i motori e i software indesiderati
Link copiato negli appunti

Spesso si ha la necessità di inibire ad alcuni software l'accesso al vostro sito oppure ad una sezione di esso. Pensiamo ai cosiddetti "offline browser" (software che possono scaricare sull'hard disk del computer un intero sito), oppure agli spider dei motori di ricerca: i primi sono eccellenti nel consumare la banda dei server, i secondi potrebbero invece mettere il naso in zone del vostro sito che volete far rimanere private.

Per evitare che ciò avvenga si può agire sia sul server, ossia modificando le impostazioni del web server che ospita il sito, oppure sulle pagine. Il secondo metodo, quello che esamineremo, è alla portata di chiunque abbia uno spazio web.

Un consorzio di ricercatori ha trovato una soluzione geniale che piano piano è diventata uno
standard. Ogni software che visualizza pagine Web deve, prima di iniziare a recuperare il contenuto del sito, verificare la presenza di un piccolo file situato nella radice del sito: il file robots.txt. In questo file il webmaster ha inserito i "permessi di visita" del proprio sito indicando quali software (detti robot) hanno accesso e quali invece no.

La struttura del file robots.txt

Il file robots.txt è un semplicissimo file di testo che, nella sua forma ideale, dovrebbe contenere semplicemente due campi: User-agent e Disallow. Il primo campo serve a definire quale robot dovrà essere escluso, il secondo definisce da quale zona del sito escluderlo. Tipicamente i due campi sono composti in questo modo e separati da un "a capo":

User-Agent: Googlebot-Image
    Disallow: /

In questo esempio il file robots.txt escluderà dalla visita dell'intero sito (lo slash identifica la radice del sito e dunque la sua interezza) lo user agent Googlebot-Image, ossia lo spider di Google che indicizza le immagini.

Il file Robots.txt accetta anche il parametro di commento identificato dal simbolo di cancelletto #. Tutto ciò che seguirà il cancelletto sarà interpretato dallo user agent come un commento e dunque ignorato:

# Escludo dall'intero sito Teleport, aggiunto il 21/02/02
    User-agent: Teleport
    Disallow: /

Nell'esempio viene escluso dall'intero sito il browser offline Teleport. I due campi sono preceduti da un commento in cui potete inserire, ad esempio, la data di scrittura dell'esclusione per utilizzarla a fini statistici.

Il file robots.txt andrà poi inserito nella radice del sito, nella stessa posizione in cui compare la index dell'homepage, e dovrà dunque essere visibile digitando http://www.nomesito.it/robots.txt.

Esaminiamo con maggiore dettaglio il significato dei due campi da includere nel file

Gli user agent

Il campo "user agent" identifica il robot. Ogni software che si connette al vostro sito per ricevere le pagine HTML prende il nome di user agent. Il vostro browser è lo user agent per eccellenza. User agent sono anche i browser offline, i software dei motori di ricerca (chiamati anche spider), i riproduttori di suoni o filmati, i plug-in e qualsiasi altro programma che «recupera e visualizza i contenuti del Web per gli utenti» (definizione del W3C).

Ogni user agent è identificato solitamente da un nome univoco che lo rende riconoscibile al web server del sito. Explorer 6 montato su Windows 2000, ad esempio, si identifica con la dicitura:

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Q312461)

Conoscendo che software sta visitando il sito, il webmaster può costruire pagine ottimizzate per i differenti user agent (come spiegato ad esempio nell'articolo Riconosciamo i browser), oppure, ed è quello che a noi interessa, escluderne alcuni dall'accesso al sito.

Il nome dello user agent è "case insensitive", ossia può essere scritto indifferentemente in maiuscolo o minuscolo senza che ciò interferisca con l'efficacia.

Un elenco molto utile di user agent è reperibile su Siteware.

Le esclusioni

Il secondo campo definisce la zona del sito dalla quale escludere il robot. La sintassi è semplice, basta far seguire alla parola "Disallow:" il nome della directory o del file da escludere dall'indicizzazione.

Alcuni esempi:

#escludo tutti gli user agent dall'intera directory "amministrazione"
    User-agent: *
    Disallow: /amministrazione/

#Escludo solo Google dal file doorway.htm
    User-agent: googlebot
    Disallow: /doorway.htm

Chi escludere?

Sappiamo come escludere. Ora dobbiamo sapere cosa escludere dal nostro sito.

Solitamente ad essere escluse per prime sono le directory che contengono contenuto che non si vuole rendere pubblico: le pagine di amministrazione, le pagine ad uso interno e così via. Se ad esempio vogliamo escludere le directory /cgi-bin/ /admin/ e /privata/ basterà inserire i seguenti campi:

User-agent: *
    Disallow: /cgi-bin/
    Disallow: /admin/
    Disallow: /privata/

Tuttavia la maggiore utilità del file è nella possibilità di escludere specifici robots "maligni" dalla visita del sito. Per robots maligni si intendono tutti quegli user agent che

  • Creano traffico inutile sul sito
  • Scandagliano il sito alla ricerca di indirizzi e-mail per utilizzarli nello spam
  • Eseguono troppe richieste e sovraccaricano il server
  • Non sono utili per il nostro sito

Il metodo migliore per identificarli è quello di verificare sui log di accesso i nomi degli user agent che giornalmente passano sul sito, verificare a che programma appartiene cercando il nome su un motore di ricerca e, se la funzione del robot non è gradita, inserire il nome dello user agent nel file robots.txt.

Escludiamo i robot indesiderati

Proviamo ad escludere qualche robot significativo della sua categoria. Apriamo Blocco Note di Windows, o il vostro editor testuale preferito, e scriviamo i seguenti campi evidenziati.

Con questo campo escludiamo dall'intero sito il robot di Google che cerca e indicizza le immagini. Lo escludiamo perché non vogliamo che le nostre immagini siano prese e riadattate da altri.

User-Agent: Googlebot-Image
    Disallow: /

Escludiamo anche i robot di Netmechanic, il sito che offre servizi di controllo di siti Web cui non siamo interessati.

User-agent: NetMechanic
    Disallow: /

Escludiamo anche EmailCollector, un software che ricerca sulla rete indirizzi di e-mail per poi utilizzarli nello spam.

User-agent: EmailCollector
    Disallow: /

Infine, escludiamo anche Teleport, l'offline browser noto per le sue capacità di sovraccaricare i server.

User-agent: Teleport
    Disallow: /

Salviamo il file come robots.txt, colleghiamoci al server che ospita il nostro sito e carichiamo il file nello stesso posto della homepage. Se tutto è a posto, tra qualche giorno i robot indicati spariranno dai nostri log file. Un esempio di file lo trovate sempre su HTML.it.

Ti consigliamo anche