Indexeerbaarheid: robots.txt en meta robots
Wat zijn robots.txt en meta robots?
robots.txt is een tekstbestand dat zich in de hoofdmap van de website bevindt (bijv. https://example.com/robots.txt) en dat zoekmachinebots aangeeft welke mappen of pagina's ze mogen crawlen. De meta-robots-tag bevindt zich daarentegen in de HTML <head> gedeelte van de pagina en bepaalt of een pagina, zelfs als deze is gecrawld, al dan niet in de zoekresultaten wordt geïndexeerd. Beide werken op verschillende niveaus: de ene beantwoordt de vraag „mag je hier binnenkomen?“, de andere „mag je deze kamer aan de catalogus toevoegen nadat je binnen bent gekomen?“.
Dit onderscheid wordt vaak door elkaar gehaald omdat beide onder de noemer „bots beheren“ vallen, maar hun toepassingsgebieden zijn totaal verschillend en een verkeerde combinatie kan ongewenste gevolgen hebben.
robots.txt is in feite een „verzoek om regels”, geen beveiligingsmaatregel: goedbedoelende bots (zoals Googlebot) houden zich aan deze regels, maar kwaadwillende bots kunnen het bestand volledig negeren. Daarom is het een verkeerde beveiligingsaanname om met robots.txt geheime of gevoelige inhoud te proberen te ‘verbergen’.
Waarom is dit belangrijk?
Het door elkaar halen van deze twee mechanismen kan de zichtbaarheid van de website ernstig schaden. Als een pagina via robots.txt wordt geblokkeerd voor indexering, kan de zoekmachine de noindex -tag op die pagina helemaal niet zien — omdat de zoekmachine de pagina eerst moet crawlen om de tag te zien — en de pagina kan per ongeluk in de index blijven staan (meestal als een vermelding zonder titel of beschrijving).
Als deze twee hulpmiddelen correct worden gebruikt, kun je nauwkeurig bepalen welke inhoud in de zoekresultaten verschijnt: robots.txt houdt het crawlbudget weg van irrelevante delen (bijv. het beheerderspaneel, zoekresultatenpagina’s), terwijl meta robots ervoor zorgt dat bepaalde pagina’s (bijv. een bedankpagina, gefilterde lijstvarianten) uit de index worden verwijderd.
Bij grote websites is het crawlbudget een beperkte hulpbron: de bot crawlt bij elk bezoek slechts een deel van de website. Door met robots.txt minder relevante gebieden (bijv. interne zoekresultatenpagina’s, filtercombinaties) te blokkeren, zorgt u ervoor dat de bot zijn tijd besteedt aan de echt belangrijke pagina’s.
Hoe los je dit op?
- Blokkeer met robots.txt alleen de mappen die u echt niet wilt laten crawlen (bijv. beheerderspaneel, winkelmandpagina’s).
- Als je een pagina uit de index wilt verwijderen, doe dat dan niet via robots.txt,
<meta name="robots" content="noindex">. - Vergeet niet dat de pagina via robots.txt crawlbaar moet blijven, anders werkt de 'noindex'-instructie niet.
- Hanteer het principe van één enkele bron van waarheid: herhaal hetzelfde signaal niet op tegenstrijdige wijze via meerdere methoden.
- Controleer het robots.txt-bestand regelmatig; er kunnen per ongeluk test- of stagingbeperkingen in de live-omgeving zijn achtergebleven.
- Gebruik het dekkingsrapport in Google Search Console om regelmatig te controleren welke pagina’s zijn gemarkeerd als ‘niet gecrawld’ of ‘uitgesloten vanwege noindex’.
Voorbeeld
User-agent: *
Disallow: /admin/
Allow: /
<meta name="robots" content="noindex, follow">
Slecht voorbeeld: een pagina eerst Disallow: /actie/ in robots.txt blokkeren en vervolgens de noindex-tag <meta name="robots" content="noindex"> toevoegen — aangezien de bot de pagina nooit zal crawlen, heeft de noindex-tag geen zin; de pagina kan nog steeds in de index verschijnen.
Veelgemaakte fouten
Disallow: /waardoor per ongeluk de hele site voor crawlen wordt geblokkeerd.- Een pagina zowel via robots.txt blokkeren als de noindex-tag toevoegen (de tag wordt helemaal niet gezien, de pagina kan in de index blijven staan).
- Vergeten om het restrictieve robots.txt-bestand uit de test-/staging-omgeving over te zetten naar de live-site.
- Belangrijke pagina’s per ongeluk aan de Disallow-lijst toevoegen.
- Na een siteverhuizing of herontwerp de oude robots.txt-regels overnemen naar de nieuwe site zonder ze te herzien; een beperking die op de oude site zinvol was, kan in de nieuwe structuur ook belangrijke pagina's omvatten.
- Geen consistent indexeringsbeleid vaststellen voor pagina’s die paginering-, filter- of sorteerparameters genereren; wanneer een deel van dit soort pagina’s in de index blijft en een ander deel wordt uitgesloten, ontstaat er een verwarrend signaal voor de hele site.
- Het op dezelfde pagina op tegenstrijdige wijze gebruiken van de canonical-tag en noindex; bijv. het instellen van noindex voor een pagina terwijl een andere pagina als canonical wordt aangeduid, leidt tot verwarrende signalen.
- Vergeten dat één robots.txt-bestand voor de hele site voldoende is en proberen om in submappen afzonderlijke toegangsbeperkingen in te stellen; robots.txt is alleen van toepassing op de hoofdmap.
- In het rapport van Seoraporu.co worden tegenstrijdige signalen zoals „geblokkeerd met robots.txt maar er is ook een noindex” afzonderlijk gemarkeerd; kies slechts één van beide in plaats van beide op dezelfde pagina te behouden.