Protocollo di esclusione robot
Il file robots.txt contiene delle regole utilizzate dai crawler (detti anche spider) per applicare restrizioni di analisi sulle pagine di un sito internet.
I web crawler sono dei software automatici programmati per effettuare ricerche ed indicizzazioni periodiche. Nella prima fase di analisi di un sito web controllano l'esistenza del file robots.txt per applicare eventuali restrizioni richieste dal webmaster del sito.
Il file robots.txt è stato creato nel giugno 1994 con il consenso dei membri della robots mailing list (robots-request@nexor.co.uk).
In questo momento non esiste un vero e proprio standard per il protocollo robots.
Protocollo
Il file robots.txt utilizza un protocollo molto semplice che permette di definire il robot al quale applicare la regola e le pagine e directory da non indicizzare.
Ogni riga del file contiene un record. Ogni record ha la seguente sintassi :
<campo> : <valore>
I campi disponibili sono :
- User-Agent
- il valore di questo campo contiene il nome del robot che si deve attenere alle restrizioni. Con il carattere * la regola viene applicata a qualsiasi robot.
- Disallow
- il valore di questo campo contiene le pagine del sito che devono essere escluse dai robot durante l'indicizzazione. Si può indicare un URL specifico o una serie di URL appartenenti ad un pattern.
Per ogni User-Agent è possibile specificare una o più restrizioni tramite Disallow.
Esempi
Ecco alcuni esempi classici dell'utilizzo del file robots.txt .
Per permettere l'accesso a tutto il sito web, non indicare nulla nella direttiva Disallow. Alcuni crawler supportano anche la direttiva Allow.
User-agent: * Disallow:
Per bloccare un intero sito, utilizza una barra.
User-agent: * Disallow: /
Per bloccare una directory e il relativo contenuto, fai seguire il nome della directory da una barra.
User-agent: * Disallow: /private_directory/
Per bloccare una pagina, indica tale pagina.
User-agent: * Disallow: /private_file.html
Per segnalare il file sitemap del sito.
Sitemap: http://www.example.com/sitemap.xml
Esiste, in aggiunta, la direttiva Crawl-Delay, supportata da alcuni crawler, che permette di regolare il tempo di accesso dello spider. Indica il tempo di attesa in secondi tra due richieste.
Se, al posto dell'asterisco, si inserisce una stringa user-agent, nella direttiva User-Agent, le regole verranno limitate al crawler identificato da tale user-agent.
Estensione Standard
Su Extended Standard for Robot Exclusion sono stati proposti due nuovi parametri: Request-rate e Visit-time:
User-agent: * Disallow: /private_directory/ # Blocca la directory /private_directory/ Request-rate: 1/5 # Visita al massimo una pagina ogni 5 secondi Visit-time: 0600-0845 # Visita soltanto tra le 6:00 AM e le 8:45 AM UT (GMT)
Posizionamento
Una volta che il file robots.txt è stato creato deve essere inserito nella directory principale del dominio ed avere il nome esatto "robots.txt". Se viene memorizzato in una directory diversa, i robot non lo troveranno in quanto di default effettuano la ricerca nella directory principale del dominio.
Se non si ha accesso alla directory principale di un dominio, è possibile limitare l'accesso utilizzando il META tag Robots.