Hallo,
bei meiner Datenbank stelle ich seit kurzem verstärkte Aktivitäten von Spider-Programmen fest.
Dabei wird im Sekundentakt anscheinend Satz für Satz meiner Datenbank abgefragt.
Obwohl ich mir nicht sicher bin, daß es sich hierbei um Suchmaschinen handelt (wenn die sich an die robots.txt halten würden, dürften sie diese Verzeichnisse gar nicht scannen...), gehe ich eher davon aus, daß hier Content-Klauer unterwegs sind.
Meine Frage ist nun, wie kann man solche Spider weitestgehend verhindern bzw. stoppen (ganz vermeiden lassen sie sich ja wahrscheinlich ohnehin nicht)?
Mir sind hierzu selber 2 Sachen eingefallen:
- Prüfen, daß zwischen den Seitenaufrufen einer bestimmten IP-Adresse mindestens x Sekunden liegen müssen.
- Wenn eine IP-Adresse innerhalb von x Sekunden mehr als y Abfragen macht, dann soll diese IP für einen bestimmten Zeitraum gesperrt werden.
Da meine PHP-Kenntnisse leider nicht so gut sind, daß ich so etwas "mal eben" programmieren könnte, meine Fragen an Euch:
Könnte man das so programmieren (und wenn ja, wie?) und wie effektiv ist es?
Hat jemand vielleicht schon mal ähnliches realisiert?
Gibt es bessere Vorschläge/Ideen?
Kurz noch etwas zur Umgebung: Es handelt sich um eine reine PHP-/MySQL-Anwendung. Sessions und Cokkies benutze ich nicht.
Ich bin Euch für jeden Hinweis dankbar.
bei meiner Datenbank stelle ich seit kurzem verstärkte Aktivitäten von Spider-Programmen fest.
Dabei wird im Sekundentakt anscheinend Satz für Satz meiner Datenbank abgefragt.
Obwohl ich mir nicht sicher bin, daß es sich hierbei um Suchmaschinen handelt (wenn die sich an die robots.txt halten würden, dürften sie diese Verzeichnisse gar nicht scannen...), gehe ich eher davon aus, daß hier Content-Klauer unterwegs sind.
Meine Frage ist nun, wie kann man solche Spider weitestgehend verhindern bzw. stoppen (ganz vermeiden lassen sie sich ja wahrscheinlich ohnehin nicht)?
Mir sind hierzu selber 2 Sachen eingefallen:
- Prüfen, daß zwischen den Seitenaufrufen einer bestimmten IP-Adresse mindestens x Sekunden liegen müssen.
- Wenn eine IP-Adresse innerhalb von x Sekunden mehr als y Abfragen macht, dann soll diese IP für einen bestimmten Zeitraum gesperrt werden.
Da meine PHP-Kenntnisse leider nicht so gut sind, daß ich so etwas "mal eben" programmieren könnte, meine Fragen an Euch:
Könnte man das so programmieren (und wenn ja, wie?) und wie effektiv ist es?
Hat jemand vielleicht schon mal ähnliches realisiert?
Gibt es bessere Vorschläge/Ideen?
Kurz noch etwas zur Umgebung: Es handelt sich um eine reine PHP-/MySQL-Anwendung. Sessions und Cokkies benutze ich nicht.
Ich bin Euch für jeden Hinweis dankbar.
Kommentar