De kracht van robots.txt

*ook verschenen op Marketingfacts

robots.gifDit keer een artikel met een iets meer technische insteek over het kleine en vaak vergeten bestand robots.txt. Veel webbeheerders onderschatten de mogelijkheden van dit kleine bestand, en sommige zijn keihard in aanraking gekomen met de kracht die het bestand heeft. Dit artikel is een reminder om iedereen weer attent te maken op dit bestand.

Wat doet het dan
Voor de mensen die het fenomeen helemaal niet kennen een korte introductie. Het robots.txt bestand wordt altijd in de root (de hoofdmap) van een website geplaatst en is bedoeld om aan te geven welke delen van de site door robots bekeken mogen worden. Over het algemeen worden met deze robots de zogenaamde spiderbots van de zoekmachines bedoeld. Voordat een zoekmachine begint een site te indexeren zal hij eerst kijken of de robots.txt bestaat en eventuele informatie geeft over wat hij wel en niet mag indexeren.


Hoe ziet het er uit
De basis van een robots.txt ziet er zo uit

User-Agent: *
Disallow: /prive/

Eerst wordt de zogenaamde User-Agent genoemd, dat is de naam waarmee een spiderbot zich bekend maakt. Een * staat voor alles, dus in dit voorbeeld zullen alle spiderbots aangesproken worden. Namen van andere grote spiderbots zijn msnbot (Live Search), googlebot (Google), slurp (Yahoo) en teoma (Ask). De tweede regel geeft aan dat de map prive door alle robots niet bezocht mag worden.

Altijd online plaatsen
Om verwarring te voorkomen is het een goed gebruik ALTIJD een lege robots.txt in je webroot te plaatsen, dan weten zoekmachines in ieder geval dat het bestand bestaat. Het komt namelijk wel eens voor dat webbeheerders een site zo ingesteld hebben dat er een speciale pagina getoond wordt (met status 200 en niet 404) wanneer een bestand niet gevonden kan worden. Als dat gebeurd wanneer een robots.txt door een spider opgevraagd wordt kan het zijn dat die een hoop code (html) terugkrijgt en voor de zekerheid niets meer spidert omdat hij er geen wijs uit kan worden. Door het plaatsen van een lege robots.txt voorkom je dit soort zaken.

Hoe te gebruiken
Standaard staan zoekmachines ingesteld om je site te indexeren, het is daarom onzinnig extra aan te geven dat het mag. Het is voornamelijk handig om te zaken die niet geïndexeerd mogen worden te blokkeren. Hierbij kun je denken aan gedeeltes waar een adminpanel staat of delen waar je eerst voor moet inloggen (al zal een zoekmachine daar als het goed is sowieso niet komen).

Een stap verder is het blokkeren van bepaalde type bestanden. Een bekend fenomeen zijn de print-pagina's die beter scoren dan hun originele pagina omdat ze simpeler en kaler van opzet zijn. En aangezien zoekmachines niet 2 keer dezelfde pagina in de index willen hebben kiezen zij een van beide uit. Dit zou je kunnen voorkomen door dit in je robots.txt te plaatsen:

User-Agent: *
Disallow: *version=print*

De wildcards in de tweede regel zeggen dat het voor alle adressen geldt die dit gedeelte in de url hebben. Op deze manier gaan de zoekmachines de print pagina's negeren en zullen de originele pagina's in de zoekresultaten verschijnen. Tegelijk heb je geen duplicate content probleem meer.

Een andere handigheid is het blokkeren van bijvoorbeeld alleen de Google-Images bot. Als je een site hebt die niet gericht is op afbeeldingen hoef je er ook niet op gevonden te worden. Je kunt dan de Google-Images bot blokkeren of heel simpel de hele /images/ folder voor alle bots (mochten ze daar allemaal in staan).

Er is een Firefox extensie die bij het bekijken van een pagina alvast de achterliggende gelinkte pagina's gaat downloaden. Dit kan een hele belasting zijn voor je server, maar ook deze kun je prima blokkeren:

User-Agent: Fasterfox
Disallow: /

Zo zijn er nog veel meer voorbeelden te bedenken wanneer bepaalde bots bepaalde gedeeltes niet hoeven te spideren. Bedenk eens voor je eigen site wanneer dat het geval zou zijn, heb je dat ook in je robots.txt geregeld?

Conclusie
Gebruik altijd een robots.txt en plaats alle delen die niet in de zoekmachine hoeven daar in. Dit scheelt bandbreedte en een hoop vervuiling van de zoekmachines.

Let op: test een robots.txt altijd in daarvoor bestemde tools. Want een site in zijn geheel uit de zoekmachines gooien kan een kwestie zijn van 1 typefout.

Links
http://www.robotstxt.org/
http://en.wikipedia.org/wiki/Robots_Exclusion_Standard

Click to activate social bookmarks

 

7 thoughts on “De kracht van robots.txt

  1. Voor sommige useragents kan het noodzakelijk zijn om 'blokken' in je robots.txt te scheiden met een lege regel. Bijvoorbeeld:
    User-Agent: *
    Disallow: /atlex_v1/

    User-Agent: FasterFox
    Disallow: /

    In plaats van:

    User-Agent: *
    Disallow: /atlex_v1/
    User-Agent: FasterFox
    Disallow: /

    Als ik het 2e voorbeeld gebruik heb ik nog steeds last van Fasterfox, terwijl deze met een lege regel in m'n robots.txt wel er goed meer omgaat.

  2. Robots.txt heeft naast de voordelen ook nadelen.

    Je blokkeert makkelijk hele delen van een website, er is geen uitzonderingsregel.

    Daarnaast is een robots.txt publiek toegankelijk, dus bezoekers weten waar op de website privé- of gevoelige data staat. Dat kan je dan beschermen met een wachtwoord, maar dan is de robots.txt in feite weer overbodig.

  3. blaise: dat is niet helemaal waar. Een robots.txt is niet om iets te beveiligen maar alleen maar om iets niet te laten indexeren. Dat er dus privemappen in staan zou niet erg moeten zijn omdat die prive zaken met een .htaccess of script beveiligd horen te zijn.

  4. Een robots.txt is niet om iets te beveiligen maar alleen maar om iets niet te laten indexeren

    Het klopt dat er een onderscheid is tussen privémappen en pagina's die je niet wil laten indexeren, maar meestal komt het doel overeen: je wil dat slechts bepaalde personen gebruik kunnen maken van (een gedeelte van) je website. Dus zoekmachines én nieuwsgierige bezoekers moeten worden geweerd. Dan biedt robots.txt alleen bescherming tegen de eerste, terwijl een andere vorm van beveiliging allebei tegelijk kan weren.

  5. Interessant artikel. Ik wist eerlijk gezegt niet dat dit bestond. Het is in ieder geval heel handig voor me site. Bedankt!

Comments are closed.