De kracht van robots.txt

De kracht van robots.txt

Dit 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 word (met status 200 en niet 404) wanneer een bestand niet gevonden kan worden. Als dat gebeurd wanneer een robots.txt door een spider opgevraagd word 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


Geplaatst in

Delen



Er zijn 14 reacties op dit artikel

  • Zoek eens op robots.txt validator op google.

    Daarnaast zit er ook in google sitemaps een robots.txt tooltje.

    geplaatst op
  • Op zich is die /prive/ melding in de robots.txt file natuurlijk een open uitnodiging voor hackers om juist op de /prive/ map te focussen...

    geplaatst op
  • Robots.txt is er NIET voor om iets te beveiligen, het zegt alleen dat je iets liever niet in de zoekmachines wil hebben. Je bent daarbij afhankelijk van de juiste interpretatie door de zoekbot, want niet alle spiders lezen de robots.txt. Als je echt iets wil beveiligen zet je dat achter een login die je middels script of htaccess geregeld hebt.

    Echte hackers zijn ook geen robots bestand nodig om gevoelige mappen te kunnen vinden ;)

    geplaatst op
  • Sterker nog, na het lezen van dit artikel eens wat testjes gedaan met diverse sites. Kwam daardoor wel heel eenvoudige bij juist gevoelige mappen van diverse sites. Ik sluit me dan ook aan bij de opmerkingen van Andre Scholten.
    Kwam daardoor bij een van de sites bij de naam van de admin dir van de site. Welke wel een heel eenvoudig password had !

    geplaatst op
  • Hmm, het is aan te raden wel de robots.txt te gebruiken, maar het is dan weer jammer dat Google veel van die dir's toch opneemt in de index, echter niet tot amper laat ranken...

    Als je het echt wilt afschermen gooi je er een .htaccess bestandje achter. Je kunt je robots.txt prima checken in je Google Webmaster Tools.

    Verder is er een bookmarklet voor: Bookmarklet : Webconf's Robots.txt Viewer
    Displays the robots.txt file for the site you are visiting.

    geplaatst op
  • Voor dit soort artikelen ga ik wel naar bv. naarvoren.nl of een andere "leuk geschreven" technisch digizine of weblog. Jullie marketeers gaan toch niet zelf de handjes vuil maken aan dit soort coderij? Daarnaast is het artikel nogal oppervlakkig.

    geplaatst op
  • Bas, helemaal mee eens, maar als jij eens wist hoeveel webbouwers hier geen kaas van gegeten hebben zou ik daar als marketeer toch zeker wel van op de hoogte willen zijn.

    Om die reden heb ik het ook oppervlakkig gehouden en niet heel erg technisch uitgediept.

    geplaatst op
  • Ik vind het juist een prima stuk voor Marketingfacts; inderdaad niet al te technisch maar voldoende prikkelend om de online marketeers aan het denken te zetten.

    geplaatst op
  • Inderdaad een interessant artikel. Afgelopen zomer heb ik voor het eerst gebruik moeten maken van zo'n robots.txt bestandje omdat ik opeens van allerlei kanten bestookt werd. Die tip om altijd een robots.txt bestandje te plaatsen is inderdaad een slimme, het duurde bij mij namelijk een aantal weken voordat het effect had. Overigens heeft Google ook een tool waarmee ze bepaalde pagina's (of gedeelten van pagina's) binnen een paar dagen kunnen verwijderen. Nadeel daarvan is dat ze je minimaal een half jaar niet meer indexeren.

    geplaatst op
  • ik plaatste (per ongeluk) wat privaat gevoelige info in een HTML file; toen ik dat 3 dagen later bemerkte, heb ik deze file meteen verwijderd, maar wat kenmerkte mijn verbazing dat bij de GOOGLE zoek-search deze pagina IN CACHE nog steeds boven water valt te halen; mijn vraag of opmerking was dan ook: hoe haal ik die pagina in CACHE er uit bij vrijwel alle zoekmachines? Kun je die opdracht OOK in robots.txt plaatsen? En zoja, hoe luidt die opdracht dan? Ik stel mij voor dat het iets zou moeten zijn van:
    Disallow: /searchengine/ of iets van die aard.
    Het gaat om pagina http://www.eurosc.nl/q18/diversen.htm
    Inmiddels heb ik een lege diversen.htm weer op die plek gezet, want geheel weghalen geeft weliswaar code 404, doch in cache is die gewraakte pagina nog steeds oproepbaar.

    geplaatst op
  • Als je een pagina uit Google wil verwijderen moet je hem in een harde 404 error laten lopen door de bewuste pagina gewoon te verwijderen. De volledige tekst kan je vinden in google webmasters hulp.

    geplaatst op
  • Helaas Willem, zo simpel is het niet, bekijk dit bericht van vandaag op SER maar eens.

    @Reg: De beste optie is dan om de manier te gebruiken die ik hier beschrijf. Dan zou je in no-time klaar moeten zijn.

    geplaatst op
  • Inmiddels via Google de gewraakte pagina uit de cache gekregen; middels de pagina geheel te verwijderen en een verzoek (request) in te dienen bij Google was de pagina na 24 uur weg en kreeg ik zojuist van google ook nog een schriftelijke bevestiging ervan.
    Maar ondertussen ondekte ik nog meer narigheid; de pagina was ook nog zichtbaar via de volgende opdracht: http://web.archive.org/*/http://www.eurosc.nl/ ; ik ben toen op zoek gegaan naar voorbeelden van GOOGLE inzake de inhoud van robots.txt. Ik vond ereen met een 30 tal opdrachten erin en deze heb ik dus nu compleet in de root van eurosc.nl gezet; gevolg: nu is er niets meer zichtbaar van mijn site bij zoeken en via web.archive.org (wellicht voor iemand nog een goede tip?) De inhoud van de robots.txt kun je (waarschijnlijk) inzien door hem op te roepen: http://www.eurosc.nl/robots.txt
    Bedankt een ieder voor de reacties!
    Reg.

    geplaatst op
  • En een mooie vid van @mattcutts http://www.mattcutts.com/blog/robots-txt-remove-url/

    geplaatst op

Plaats zelf een reactie

Log in zodat je (in het vervolg) nóg sneller kunt reageren

Vul jouw naam in.
Vul jouw e-mailadres in. Vul een geldig e-mailadres in.
Vul jouw reactie in.

Herhaal de tekens die je ziet in de afbeelding hieronder


Let op: je reactie blijft voor altijd staan. We verwijderen deze dus later niet als je op zoek bent naar een nieuwe werkgever (of schoonmoeder). Reacties die beledigend zijn of zelfpromotioneel daarentegen, verwijderen we maar al te graag. Door te reageren ga je akkoord met onze voorwaarden.