phpBuddy

Webhosting Gutscheine

Auf der Suche nach einem top Provider? Dann lohnt ein Blick auf diesen Artikel - Gutscheine zum Geld sparen gibt's inklusive!

Sie sind hier: Startseite Downloads phpBuddy.eu SpiderTracker
SpiderTracker mit Bad Bot Blocker

Was ist ein SpiderTracker?

Die Robots von Suchmaschinen (automatisierte Programme die Webseiten nach Informationen durchsuchen) werden auch Crawler oder Spider genannt. Tracker heisst übersetzt so viel wie Fährtenleser oder Aufspürer. Demnach ist ein SpiderTracker so etwas wie ein Suchmaschinenrobot-Aufspürer - und genau das macht dieses Tool. Sobald eine Seite aufgerufen wird prüft der SpiderTracker (nachfolgend ST genannt), ob es sich um eine bekannte Suchmaschine handelt. Ist das der Fall, wird der Zugriff protokolliert, indem die aufgerufene Seite, der Zeitpunkt und die Suchmaschine in einer Datei festgehalten wird.


Für wen lohnt sich das Tool?

Seitenbetreiber die gerne wissen möchten wann, welche Suchmaschine wie oft Inhalte der Präsenz indexiert hat. Durch die eingebaute Suchfunktion kann man auch gezielt nach einer Adresse suchen um so festzustellen, ob neu eingestellte Inhalte schon von Suchmaschinen entdeckt wurden.


Leistungsmerkmale

  • Hohe Performance durch PHP5 objektorientiert Programmierung; keine MySQL Datenbank nötig, da das dateibasierte SQLite eingesetzt wird
  • 9 bekannte Suchmaschinen werden protokolliert: Abacho, Alexa, AltaVista, Excite, Google, Infoseek, Lycos, MSN, Yahoo
  • Erweiterbarer Bad Bot Blocker (siehe unten)
  • Such- und Löschfunktion (Passwortgeschützt)
  • Flexible Einstellmöglichkeiten durch eine Konfigurationsdatei
  • Einfache Blätterfunktion
  • Sortiermöglichkeit nach Suchmaschine und Topliste

Bad Bot Blocker

Robots, kurz Bots, werden nicht nur von Suchmaschinen eingesetzt, sondern auch von Gesindel, die einem nichts Gutes wollen. Es gibt die unterschiedlichsten Arten von Bots, wie etwa Content Grabber (laden die komplette Webseite und vor allem Bilder herunter, um sie offline verfügbar zu machen, was einen enormen Traffic verursachen kann), Spam Bots oder auch Bot Net Crawler. Während Spam Bots verhältnismäßig harmlos sind, da sie nur Email Adressen von Webseiten sammeln oder Unsinn in Kontaktformulare oder Gästebücher schreiben, sind Bot Net Crawler von einem ganz anderen Kaliber. Diese Bots suchen systematisch im Quelltext nach Formularen um das dahinter liegende Script mit Anfragen zu bombardieren um XSS- (Cross Site Scripting) oder SQL-Injection Schwachstellen aufzuspüren und auszunutzen.
Der integrierte BadBotBlocker (ist optional und kann in der Config an/aus geschaltet werden) prüft bei einem Seitenaufruf nicht nur, ob es sich um eine Suchmaschine handelt sondern prüft auch, ob sich hinter der User Kennung ein potentiell schädlicher Bot verbirgt und sendet in diesem Fall nur eine leere Seite und blockiert somit den Zugriff.

Die Bad Bot Liste, die beliebig erweitert werden kann, umfasst derzeit über 200 der bekanntesten schädlichen Bots. Durch Teilstringerkennung wird ebenfalls eine Vielzahl Varianten einer Bot-Kennung blockiert. Selbstverständlich ist man damit nicht vollkommen vor Bots gefeit, aber es hilft das Problem einzudämmen.


Wichtig

Bevor ich zur Installationsanleitung und Funktionsweise komme ist hier der Zeitpunkt kurz einzuhaken. Da der ST nach modernen Techniken programmiert wurde (vorausgesetzt werden PHP 5.2 oder höher, sowie SQLite2-Unterstützung), aber noch längst nicht jeder Provider diese Anforderungen erfüllt, sollte zunächst das kleine Test-Script auf dem Zielserver ausgeführt werden um festzustellen, ob man den ST überhaupt einsetzen kann.
Dazu einfach den Tester downloaden, auf den Server übertragen und im Browser aufrufen. Erscheint dort kein "Herzlichen Glückwunsch", kann das Script auf diesem Server nicht verwendet werden, bis der Provider sich dazu entschlossen hat die technischen Voraussetzungen auf den neuesten Stand zu bringen.
Wurde der Test bestanden, geht es weiter mit der ...


Installationsanleitung

Die Installation ist denkbar einfach und in den meisten Fällen in weniger als 2 Minuten abgeschlossen. Zunächst wird vorausgesetzt das die zu überwachende Seite PHP ausführen kann - statische HTML Seiten funktionieren also nicht, sofern der Server nicht entsprechend konfiguriert ist. Optimal geeignet sind Shop Systeme oder CMS-Systeme, da diese in der Regel nur einen POE (Point of Entry) haben und man nur an einer Stelle das Script einbinden muß. Und so funktioniert's:

  1. Zip Datei lokal entpacken
  2. Auf dem FTP einen Ordner spidertracker im Verzeichnis erstellen, in dem die Webpräsenz liegt. Das ist idR das Wurzelverzeichnis
  3. Dem Ordner spidertracker CHMOD 766 oder 777 geben (Sollte PHP als CGI laufen muß man CHMOD 755 vergeben. Info dazu erteilt Euch euer Provider)
  4. In der Datei einstellungen.php die Variablen anpassen (sicheres Passwort wählen, sonst kann jeder die Statistik löschen!)
  5. Alle Dateien auf den Server übertragen
  6. Der Datei spidertracker.sqlite CHMOD 666 geben
  7. In die zu überwachende Datei(en) ganz oben die Datei spidertracker.php einbinden.
    <?php include( 'pfad/zum/script/spidertracker.php' ); ?>
  8. Fertig!

Die Statistik ruft man im Browser auf, indem man das Verzeichnis spidertracker ansurft (z.B. http://www.domain.tld/spidertracker/). Wer nicht möchte das ein öffentlicher Zugriff möglich ist, kann sich über den Provider, sofern möglich, einen Verzeichnisschutz einrichten.


Kurzanleitung

Da der ST bewusst sehr schlank und schlicht gehalten ist, gibt es auch nicht viel zu erklären. Links oben kann man in das Suchfeld eine komplette Adresse seiner Präsenz eingeben um diese in der Datenbank zu suchen. Wurde die Seite bereits erfasst, wird eine Übersicht ausgegeben die zeigt welche Suchmaschine zu welchem Zeitpunkt zugegriffen hat. Gibt es eine Fehlermeldung, wurde diese Seite noch nicht von einer der bekannten Suchmaschinen besucht.

Rechts sind die Navigationslinks für die Komplettübersicht, die Topliste (diese Seiten wurden am häufigsten von Suchmaschinen besucht), sowie Suchmaschinen, sortiert nach Anzahl der Besuche. Wenn eine Suchmaschine dort nicht aufgeführt ist bedeutet das, dass diese Suchmaschine noch nie auf der Seite war.

Die Übersicht selbst zeigt das Datum, die Suchmaschine in Form eines kleinen Icons, ein Info-Symbol, sowie die erfasste Seite. Ein Klick auf das Info-Symbol zeigt die URL-Einzelübersicht -ähnlich dem Suchfeld links oben- das Aufschluß über die Suchmaschinenaktivität auf einer bestimmten Seite liefert.

Rechts unten findet man die Größe der Datenbankdatei in Kilobyte. Darunter kann man ältere Einträge löschen oder die Datenbank komplett leeren. Einfach die gewünschte Option wählen, das Adminpasswort in das Feld eingeben und die Form abschicken.

Möchte man mit dem Script umziehen (Serverwechsel o.ä.) kann man einfach den ganzen Ordner spidertracker, inklusive Datenbankdatei, an den neuen Bestimmungsort kopieren und kann dort nahtlos "weitertracken". (Dateirechte setzen nicht vergessen!) :)
Wird die Datenbankdatei zu groß, aber man möchte die alten Einträge nicht verlieren, kann man einfach ein Backup der Datenbankdatei machen bevor man sie leert. Man hat später die Möglichkeit über ein Zusatzscript (das erst noch geschrieben werden muß) die Datenbankdateien miteinander zu verknüpfen.

Hinweis:
Nachdem das Script eingebunden wurde sollte man, besonders am Anfang, hin und wieder kontrollieren ob Einträge in die Datenbankdatei geschrieben werden. Natürlich nur, wenn man sich sicher ist das zwischenzeitlich Suchmaschinen auf der Seite waren.
Sollten keine Einträge gefunden werden, bitte zunächst prüfen ob die Datei spidertracker.php korrekt eingebunden wurde und das die Dateirechte korrekt gesetzt wurden! Ebenso ist daran zu denken, dass die spidertracker.php in jede (!) Datei eingebunden werden muß die überwacht werden soll.


Zu guter Letzt ...

... gibt es hier noch einen Link der das Script in Action zeigt: SpiderTracker Live Demo

Das ist das Script im produktiven Einsatz, wie ich es hier auf phpBuddy.eu verwende.
Achja, weil es doch wieder Scherzbolde gibt die denken sie müssten die Löschfunktion am Livesystem testen, habe ich diese vorsichtshalber deaktiviert. ;)

Viel Spaß mit dem Script,
Andreas

phpBuddy.eu SpiderTracker Tester Tool (1 KB)
phpBuddy.eu SpiderTracker (18 KB)