Bij een op het eerste gezicht perfect geoptimaliseerde site slaagde ik er niet in om de site ook effectief te laten indexeren door Google. Ik wist er me geen raad mee totdat ik ontdekte dat een ontbrekende "robots.txt" aan de basis van alle ellende lag.

Wat is "robots.txt"?

Robots.txt is een tekstbestandje in de root van je site waar in staat welke pagina's van de site al dan niet mogen opgenomen worden in de zoekmachines.
De syntax van het robot.txt bestand is eigenlijk heel eenvoudig en ziet er als volgt uit:


User-agent: [naam spider]
Disallow: [naam bestand of directory]
Allow: [naam bestand of directory]


Naam Spider is de naam van de zoekmachine waarvoor bepaalde directories open of toe gezet worden. Per robots.txt kun je meerdere zoekmachines toevoegen.

Met Disalow sluit je bepaalde bestanden of directories uit voor de zoekmachines
Met Allow laat je specifieke bestanden of directories toe.

De wildcards "*" voor een onbepaald aantal karakters  en "?" voor 1 karakter zijn toegestaan.


vb:
User-agent: *
Disallow: /SEO_ebooks
Allow: /SEO_ebooks/gratis


Bovenstaande User-agent geldt voor alle zoekmachines (het sterretje)
Disallow: de directory met e-books niet geïndexeerd door de zoekmachines
maar
Allow: de ene directory met gratis e-books wordt wel opgfenomen in de directory.


Hieronder zie je een voorbeeld van de robots.txt van google. (ook interessant om eens te bekijken we zo ook zien wat google liever voor ons verborgen houdt  Wink).


{mosimage}

Pas op:
Zoekmachines zijn niet verplicht om de robots.txt te volgen. De groten zoals Google, AltaVista, Yahoo en dergelijke volgende de robots.txt, anderen doen dit niet. Als je een bepaalde directory echt wil blokkeren voor de zoekmachines doe je dit best door de directory paswoord beveiligd te maken.

Geen robots.txt en toch wordt mijn hele site niet geïndexeerd door de zoekmachines?

Voordat een site doorzocht wordt door de zoekmachines zoals google wordt de robots.txt geanalyseerd om er zeker van te zijn dat er geen ongewenste directories geïndexeerd worden.
Als robots.txt niet bestaat genereert de site een "Error 404 - Page not Found"  en gaat de indexering gewoon door.

Als de foutmelding 404 echter onderdrukt wordt (vb. wordt doorgestuurd naar een bestaande pagina). Dan zal Google de site niet verder crawlen en een volgende keer nog eens proberen totdat de robots.txt file beschikbaar wordt.

De oplossing is om in dergelijke gevallen toch een robots.txt bestand aan te maken, ook al zet je er in:


User-agent: *
Allow: *

Moeilijk probleem, eenvoudige oplossing (met google-sitemaps kun je geldigheid van je robots.txt trouwens perfect testen).