Nel capitolo precedente abbiamo illustrato il funzionamento del meta tag
ROBOTS e come, attraverso esso, sia possibile ridurre l'attività di
scansione degli spider sulle pagine di un sito web e impedire ai motori di
ricerca di archiviare alcune pagine del sito.
Tuttavia, l'uso di tale tag può risultare scomodo in quanto si tratta di
uno strumento dedicato alla singola pagina web, e non permette di dare
agevolmente agli spider indicazioni di scansione su interi gruppi di
pagine o intere directory.
Inoltre, il meta tag ROBOTS contiene indicazioni valide per gli spider di
tutti i motori di ricerca e non è dunque possibile impedire la
lettura delle pagine solo ad alcuni motori, lasciando gli altri liberi di
scansire e prelevare liberamente le pagine del sito web.
Per ovviare a queste limitazioni, è nato il Robots Exclusion
Standard (standard per l'esclusione dei robot), ovvero un sistema che
permette ai webmaster e agli amministratori di sistema di avere un
controllo maggiore su quante e quali pagine HTML far prelevare da quali
spider.
Il file robots.txt
Lo standard per l'esclusione dei robot (ovvero degli spider) si avvale
dell'utilizzo di un normale file di testo, da creare attraverso un qualunque
text editor. Tale file va chiamato "robots.txt" e contiene, in un
particolare formato, delle istruzioni che possono impedire a tutti o alcuni
spider il prelievo di alcune o tutte le pagine del sito.
Una volta creato il file robots.txt, esso va pubblicato on-line nella
directory principale del sito web. Ad esempio, se il sito ha
indirizzo http://www.nome_del_sito.com , il file dovrà essere accessibile
all'indirizzo http://www.nome_del_sito.com/robots.txt .
Tutti gli spider di quei motori di ricerca che hanno deciso di aderire a questo
standard e di seguire le indicazioni del file robots.txt (ovvero la maggior parte dei
motori, sebbene non tutti), ogni volta che accederanno al sito web, per prima cosa
andranno a cercare nella directory principale il suddetto file e, se lo troveranno,
seguiranno le direttive contenute al suo interno.
Contenuti di robots.txt
Innanzitutto è indispensabile aver chiaro quanto segue: il file robots.txt
contiene una lista di pagine e directory che gli spider
NON possono prelevare.
Ciò significa che non esiste una istruzione per dire allo spider:
"puoi prelevare questa pagina" ma esistono solo istruzioni per
dirgli: "NON puoi prelevare questa pagina". Non a caso lo
standard si chiama Standard per l'esclusione dei
robot.
Quanto appena specificato è estremamente importante, in quanto molti degli
errori che i webmaster spesso inseriscono nei file robots.txt hanno
origine dall'errata comprensione di ciò che è possibile fare con
essi.
Se non avete la necessità di impedire ai motodi ricerca di prelevare alcune
(o tutte) pagine del vostro sito, allora il file robots.txt non vi serve.
Formato di robots.txt
Il file robots.txt contiene dei record, ognuno dei quali comprende
due campi: il campo "User-agent" ed uno o più campi
"Disallow".
Il campo User-agent serve ad indicare a quale robot/spider le direttive
successive sono rivolte. La sua sintassi è:
User-agent <duepunti> <spazio> <nome_dello_spider>
Il campo Disallow serve a indicare a quali file e/o directory non
può accedere lo spider indicato nel campo User-agent. La sintassi di questo
campo è:
Disallow <duepunti> <spazio> <nome_del_file_o_directory>
Esempio di un record:
User-agent: googlebot
Disallow: /testi.html
Disallow: /mp3/
Il suddetto record dice a Google ("googlebot" è il nome dello
spider di Google) che non gli è permesso prelevare il file testi.html nè
accedere alla directory mp3 e ai suoi contenuti, sottodirectory comprese.
Notate come il nome del file è preceduto da un carattere "/" (che indica
la directory principale del sito) e come il nome della directory fa uso di un
carattere "/" anche in coda.
Il campo User-agent può contenere un asterisco "*", sinonimo di
"qualunque spider". Per cui l'esempio seguente dice a tutti gli
spider di non prelevare il file temporaneo.html:
User-agent: *
Disallow: /temporaneo.html
Il campo Disallow può contenere un carattere "/" ad indicare
"qualunque file e directory". L'esempio che segue impedisce a
scooter (lo spider di Altavista) di prelevare qualunque cosa:
User-agent: scooter
Disallow: /
Infine, il campo Disallow può essere lasciato vuoto, ad indicare che non
ci sono file o directory di cui si vuole impedire il prelievo. L'esempio
seguente mostra come dire a tutti i motori di ricerca di prelevare tutti i
file del sito:
User-agent: *
Disallow:
Esempio di un file robots.txt
Come scritto pocanzi, il file robots.txt si compone di uno o più record,
ognuno dei quali prende in esame spider differenti. Ecco dunque un esempio
completo di file robots.txt, che blocca del tutto Altavista, impedisce a
Google l'accesso ad alcuni file e directory e lascia libero accesso a
tutti gli altri motori di ricerca.
User-agent: scooter
Disallow: /
User-agent: googlebot
Disallow: /intestazione.html
Disallow: /links.html
Disallow: /temporanei/
Disallow: /cgi-bin/
User-agent: *
Disallow:
Lista degli spider
Ecco di seguito una breve lista con i nomi degli spider dei principali motori di ricerca internazionali:
| Nome spider | Motore di ricerca |
| googlebot | Google |
| fast | Fast - Alltheweb |
| slurp | Inktomi - Yahoo! |
| scooter | Altavista |
| mercator | Altavista |
| Ask Jeeves | Ask Jeeves |
| teoma_agent | Teoma |
| ia_archiver | Alexa - Internet Archive |
Il nome (User-agent) degli spider di altri motori di ricerca può essere
individuato cercando nei log del server HTTP che gestisce il sito web
oppure consultando le pagine dei motori di ricerca dedicate ai webmaster.
Quasi sempre, vengono indicati i nomi degli spider e come bloccarli usando
il file robots.txt.
Indicazioni finali
Nel caso in cui voleste inserire all'interno del file robots.txt alcuni
commenti, potete farlo scrivendo righe di testo il cui primo carattere è
un "cancelletto" #. Tali righe verranno completamente ignorate dagli
spider dei motori. Esempio:
User-agent: *
# Non voglio che i motori di ricerca ficchino
# il naso nella mia directory personale.
Disallow: /personale/
Vi consigliamo di aderire scrupolosamente alla sintassi utilizzata
negli esempi riportati in questo capitolo. Ricordatevi di scrivere il nome
dei campi esattamente come abbiamo indicato e non dimenticate i due punti
e lo spazio prima del contenuto del campo.
Quando gli spider non trovano il file robots.txt, si comportano come se
avessero ricevuto via libera ed accederanno dunque a tutte le pagine
trovate nel sito (salvo diversamente specificato dai meta tag ROBOTS).
È sempre consigliato creare un file robots.txt, anche quando il suo
contenuto si limita a dare via libera a tutti gli spider. La sua semplice
esistenza nella directory principale del sito eviterà infatti un
errore 404 (file non trovato), con conseguenze che variano da server a
server, a seconda della loro configurazione.
Una volta che avrete creato un file robots.txt potrete controllarne la correttezza
attraverso il nostro analizzatore di robots.txt.