zur « Themenübersicht Dit&Dat

Diverses - Sparte

Eingetragen / aktualisiert am 07.08.2008

Es begann damit, dass nach geraumer Zeit die verschiedensten Suchmaschinen-Bots meine Seite aufsuchten. Dies ist ja auch so gewollt und freute mich, dass Yahoo ohne dortige Anmeldung meine Seite besucht. Zumeist begnügen sich die Bots mit ca. 3 Besuchen am Tag. Aber plötzlich schossen die Zugriffe um ca. 200 in die Höhe und das bei steigender Tendenz.
Ich habe den Einddruck, dass dies mit meiner robots.txt zu tun, denn erst seit dem ich die hoch geladen hatte, ging das so richtig los.
Beim auswerten meiner Logfiles entdeckte ich dann den Inktomi-Bot Slurp, der sich breit machte wie ein Virus!
Als die Zugriffe innerhalb weniger Tage auf ca. 400, auch mit steigender Tendenz stiegen, dachte ich, jetzt musst du was unternehmen, zumal meine Statistiken völlig verfälscht wurden!
Ich habe eigentlich genug Traffic zur Verfügung, aber viele nicht, darum hier meine Tipps, denn bei mir saugte Inktomie gut 25 MB.

Wer ist Inktomi, was ist Slurp?
Inktomie ist ein Dienstleister zum Indexieren von Webseiten. Bei Inktomi bedienen sich zB. Yahoo, Lycos, HotBot, MSN und einige andere mehr. Inktomi selbst besitzt keine Suchmaschine, sie liefern nur die Daten und verkaufen sie weiter.
Der Bot, also die Maschine die die Webseiten durchforstet nennt sich Slurp.

Was ist zu tun?
Welche Strategie man anwendet, muss jeder für sich selbst ausmachen, da bei jedem Webmaster die Interessenlage anders ist. Da Google mit einem Marktanteil um 90% die wohl wichtigste Suchmaschine ist, mag sich manch einer überlegen, Inktomi gänzlich auszusperren. Sperrt man Inktomi aus, ist es auch wahrscheinlich, dass man bei Yahoo, MSN, Yahoo usw. ganz aus dem Index fliegt. Wie gesagt, die Strategie muss jeder für sich selbst ausmachen. Ich zeige hier die unterschiedlichen Möglichkeiten auf.

Hinweis:
Ich gehe davon aus, dass bei euch PHP läuft und dass ihr eine eigene .htaccess anlegen dürft und mode_rewrite aktiv ist. Wenn ihr nicht sicher seid, erkundigt euch bei eurem Provider. Ohne .htaccess mit aktivem mode_rewrite geht nur die Möglichkeit mit PHP oder der robots.txt. Wer ganz billig hostet, na ja, die robots.txt geht immer!


Der Bot hat Gott sei Dank einen Namen und so kann man ihn leicht aussperren. Bei Inktomi ist das Slurp und diesen Nervtöter wollen wir ja weg haben.

Per .htaccess:
SetEnvIfNoCase User-Agent slurp spambot=1

<Limit GET POST PUT>
Order allow,deny
deny from env=spambot
allow from all
</Limit>

Allerdings versteckt sich der Bot manchmal und verschleiert seinen Namen, logisch, dass dann der Filter nicht wirkt. Besser ist es da, einen Adressraum zu sperren.

Tipp:
Den folgenden Trick kann man auch sehr gut gegen andere Besucher anwenden! Besucher von bestimmten Websiten, den Firmenrechner, die ganzen Spambots aus dem asiatischen Raum...


Um unseren Slurp auszusperren, sperren wir den Adressraum 76.6.xx.xxx
Ihr müsst in den Logs mal kontrollieren, ob sich Inktomi nicht noch anderer Adressräume bedient. Der Eintrag deny from kann beliebig erweitert werden, einfach in die nächste Zeile schreiben.
<Limit GET PUT POST>
order allow,deny
deny from 76.6.
allow from all
</Limit>

Möchtet ihr Slurp nicht aussperren, könnt ihr ihm auch eine bestimmte Seite unter jubeln:
RewriteCond %{HTTP_USER_AGENT} ^Slurp
RewriteRule ^.*$ fuerslurp.html [L]

Eine Möglichkeit wäre, hier eine Seite mit viel Text über den Inhalt eurer Seite anzulegen.

Wenn ihr nicht berechtigt seid eine eigene .htacces anzulegen, aber PHP läuft, könnt ihr das so lösen. Logisch, dass eure Dateien auf .php enden ;-)

Per PHP:
<?php
    if (preg_match("/Slurp/",$_SERVER['HTTP_USER_AGENT'])) {
       echo "Hi Slurp,  du bist hier nicht willkommen, also verzieh dich!";
       exit (); /* Die Ausgabe wird beendet, d.h. der  Slurp sieht  nur diesen tollen Satz.  */
    }
?>

An stelle von $_SERVER['HTTP_USER_AGENT'] könnte man vorher die IP ermitteln und wieder den Adressraum sperren.
<?php

$ip=getenv("REMOTE_ADDR");

    if (preg_match("/76.6/",$ip)) {
       echo "Hallo Inktomi, leider bist du hier nicht willkommen, also verzieh dich!";
       exit ();
    }
?>
Eine andere Methode für die, die Inktomi und damit auch Yahoo, HotBot, MSN... nicht gänzlich ausschliessen wollen ist die, Slurp ein wenig zu behindern. Inktomi bzw. Slurp unterstützen dieses Verfahren.
Die Inktomi's Coupled Cluster Software Architektur ist wohl auch ein Kind von MSN. Wie oben beschrieben ist Inktomi geil auf einer robots.txt, von daher ist diese Methode vielversprechend. Einerseits den Traffic einzudämmen, die Statistiken nicht all zu sehr verfälschen, aber trotzdem nicht aus dem Index zu fliegen.

Per robots.txt:
Legt eine robots.txt an und ladet sie in den Root des Servers, also wo auch eure index.php oder .html liegt, vorher schreibt ihr natürlich folgenden Code:
User-Agent: Slurp
Crawl-Delay: 10
Hintergrund ist der, dass mit Crawl-Delay: 10 der nächste Seitenaufruf um 10 Sekunden verzögert wird.
Was sind schon 10 Sekunden? Ich habe diesen Wert auf 36000 gesetzt, das sind 10 Stunden. Jedenfalls wirkt bei mir (noch) diese Maßnahme und Inktomi scheint sich echt daran zu halten.
Theoretisch müssten ja alles IPs nach 10 Stunden wieder auftauchen, tun sie aber nicht, beleidigt?. Ein mal am Tag verirrt sich Slurp mit vielleicht 3 verschiedenen IPs auf meiner Seite.
Ich hoffe, der Zustand bleibt noch, ansonsten werde ich Inktomi gänzlich verbannen ;-)

Hier bestünde auch die Möglichkeit, Inktomi und Slurp gänzlich auszuschließen:
User-agent: Slurp
Disallow: /


 

Inktomi69Bots und IPs aussperren