<< Zoekmachine Links | Website Index | Hoe scoort mijn site >>
Deze pagina gaat niet over het binnenhalen van zoekmachines maar het tegenovergestelde hiervan, het buiten houden ervan. Hoe zorg je ervoor dat zoekmachines bepaalde delen van mijn site juist niet in een index stoppen. Of om ervoor te zorgen dat zoekmachines en bezoekers naar een andere (nieuwe) site worden doorgestuurd.
Voorbeelden:
Alle brave robots volgen de robots exclusion standaard. Elke robot kijkt of een file www.domein.invalid/robots.txt bestaat, en zal als deze er is de aanwijzigen in deze file opvolgen.
Een voorbeeld file ziet er als volgt uit
|
User-agent: alexa |
Verbied de robot met naam alexa de hele site te bezoeken en in zijn index op te nemen. |
|
User-agent: |
Verbied alle robots de file /pad/file.html en de directory /geheim te bezoeken en in hun index op te nemen. Maar ook /geheim/subsir, /geheim2 en /pad/file.html vallen onder het verbod. |
|
User-agent:MSIECrawler |
Voorkomt dat mensen je site kunnen downloaden met behulp van de optie in Internet Explorer voor offline gebruik. |
|
User-agent: * |
Verbied alle robots toegang tot de hele site. Zowel het ontbreken van een User-agent als de User-agent * betekend alle robots. |
|
User-agent: Googlebot-Image |
Verbied google om plaatjes te indexeren |
|
User-agent: * |
Alles mag bekeken worden |
Volgens de standaard moeten de paden beginnen
met een / en zijn wildcards niet toegestaan dus
werkt volgens de standaard niet, veel robots, waaronder google, ondersteunen het wel.
Er kan maar 1 robots.txt zijn, geschreven met kleine letters en deze moet zich onmiddellijk in de root van een (sub)domein bevinden:
Er zijn tal van robots.txt checkers bijvoorbeeld:
Met meta tags is het mogelijk per file duidelijk te maken wat een robot met de file moet doen. Uitleg hierover is te vinden op de meta-tag pagina
Met dynamische scripts (php,perl, Asp en dergelijke) is het mogelijk de meta tag aan te passen aan het verzoek. Bijvoorbeeld een NOINDEX sturen als een edit commando gegeven wordt.
De apache webserver maakt gebruikt van .htacces files om op een 'per directorie/file' basis bepaalde instellingen te doen. De webserver zoekt recursief omhoog vanaf de plek waar je document staat, gevonden .htaccess files worden toegepast. Zaken die geregeld kunnen worden zijn: wachtwoord beveiling, een nette 404 pagina, redirects, blokkeren van ip nummers en nog veel meer.
Sommige (gratis) hosts laten .htaccess-bestanden toe om te functioneren, echter lang niet alle providers doen dat. Als jouw host het wel ondersteunt, dan kan je gebruik maken van .htaccess-bestanden, simpelweg door een .htaccess file te maken met een editor deze te uploaden naar de goede directory, de juiste rechten geven (775, oid) en klaar. Let wel dat de .htaccess file vrijwel altijd 'onzichtbaar' wordt in je ftp-client nadat hij op de server geplaatst is. Dat komt door de . (punt). Hier is niets aan te doen.
Uitgebreide (Engelse) info vind je op de site van bijvoorbeeld apache versie 2.0 of apachefreak versie 1.x. Mail me als je vragen hebt. En paar mogelijkheden:
Als je last hebt van een specifiek robot of bezoeker kun je die afweren met de regels:
|
order allow,deny |
Let wel dat de robot of bezoeker makkelijk een ander ip-adres kan nemen.
Met Redirect en RewriteRules in een .htaccess kun je op verschillende manieren robots en andere bezoekers sturen. Helaas staat het gebruik van Redirect en Rewrite vaak uit. Met een Redirect(match) is het mogelijk een bezoeker op basis van de verzochte URL door te sturen. Hetzelfde kan met de RewriteRules, alleen zijn hier de mogelijkheden veel uitgebreider.
Deze regel stuurt verzoeken voor pagina's op een oude plek (http://www.brambring.nl/NZ/...) door naar de nieuwe plek
Redirect 301 /Main/EgelLinks http://egel.startpagina.nl RedirectMatch 301 ^/NZ(.*) http://www.brambring.nl/wiki/Main/NieuwZeeland
Deze regels zorgen ervoor dat verzoeken naar http://brambring.nl omgezet worden naar http://www.brambring.nl:
rewriteengine on
RewriteCond %{HTTP_HOST} ^brambring.nl [NC]
RewriteRule ^(.*) http://www.brambring.nl/$1 [R=301]
Verjaag tal van enge robots en grabber' s (zoals webcopier). Toegegeven: niet allemaal zelf verzonnen.
rewriteengine on
RewriteCond %{HTTP_USER_AGENT} ^Web.?(Auto|Cop|dup|Fetch|Filter|Gather|Go|Leach|Mine|Mirror|Pix|QL|RACE|Sauger) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Web.?(site.?(eXtractor|Quester)|Snake|ster|Strip|Suck|vac|walk|Whacker|ZIP) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^(BlackWidow|Crescent|Disco.?|ExtractorPro|HTML.?Works|Franklin.?Locator|HLoader|http.?generic|Industry.?Program|IUPUI.?Research.?Bot|Mac.?Finder|NetZIP|NICErsPRO|NPBot|PlantyNet_WebRobot|Production.?Bot|Program.?Shareware|Teleport.?Pro|TurnitinBot|TE|VoidEYE|WebBandit|WebCopier|WEP.?Search|Wget|Zeus) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} cherry.?picker|e?mail.?(collector|extractor|magnet|reaper|siphon|sweeper|harvest|collect|wolf) [NC,OR]
RewriteCond %{HTTP_USER_AGENT} Educate.?Search|Full.?Web.?Bot|Indy.?Library|IUFW.?Web [NC,OR]
RewriteCond %{HTTP_USER_AGENT} httrack|larbin|NaverRobot|Siphon|SURF [NC,OR]
RewriteCond %{HTTP_USER_AGENT} efp@gmx\.net [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Microsoft.?URL.?Control [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Miss.*g.*.?Locat.* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.06\ \(Win95;\ I\) [OR]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0\ \(compatible\ ;\ MSIE.? [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Mozilla/4\.0\ \(compatible;\ MSIE\ 5\.00;\ Windows\ 98$ [NC,OR]
RewriteCond %{HTTP_REFERER} q=guestbook [NC,OR]
RewriteCond %{HTTP_USER_AGENT} naver [NC,OR]
RewriteCond %{HTTP_REFERER} iaea\.org [NC]
RewriteRule ^.*$ - [F]
Hoe mooi ook (de layout is niet zo mooi; maar knippen en plakken werkt), het is helaas niet waterdicht, robots kunnen een andere identiteit aannemen. Met name kwaadwillende ( grabbers email-harvesters) zullen dat ook doen.
Een andere mogelijkheid in .htaccess is het zogenoemde hotlinking tegen te gaan. Niet direct een robot issue maar kan handig zijn. Met hot-linking wordt bedoeld dat men vanaf een andere site bijvoorbeeld een plaatje van weer een andere server gebruikt. Wil jij tegengaan dat mensen plaatjes (oid) van jouw server gebruiken om op hun eigen server te gebruiken? Zo ja, zet dan het onderstaande in een .htaccess-bestand voor de directories waar het voor geldt. Zet het in de 'hoofd'-directory om het voor alle opvolgende directories te laten gelden.
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http://(www\.)?jouwdomein.nl(/)?.*$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|bmp)$ - [F,NC]
Verander jouwdomein in je eigen domein.
Het nut? Bandbreedte wordt niet meer van jou gebruikt.
Meer:
Alles wat in de .htaccess file met rewrite en redirect kan, kun je ook uitvoeren als je website gebruik kan maken van dynamisch webpagina's. Dus pagina's gemaakt met php, perl, asp en java en andere script talen. De informatie die de webserver gebruik in de .htaccess, is ook beschikbaar in een script. Hoe het precies werkt is afhankelijk van de gebruikte taal.
Javascript heeft geen nut omdat robots die niet uitvoeren.
if ( preg_match("/vagabondo|googlebot|ingrid/i",$_SERVER"HTTP_USER_AGENT"] ) ) {
header("Location: http://www.brambring.nl/wiki/Main/Robots");
header("Status: 401 Unauthorized");
header("HTTP/1.1 401 Unauthorized");
header("HTTP-Status: 401 Unauthorized");
exit;
}
De beste manier om robots en andere bezoekers buiten te houden zijn wachtwoorden. Laat een bezoeker eerst een account aanmaken voordat hij verder kan.
<< Zoekmachine Links | Website Index | Hoe scoort mijn site >>