Apache: Badbots und Content-Scraper per .htaccess aussperren

Wenn man sich die HTTP-Logfiles von seinem Webserver oder seinem Loggingskript anguckt, dann findet man teilweise immer wieder Zugriffe von unbekannten Useragents, die einfach nur Ressourcen verbrauchen und für den Blogbetreiber keinerlei Mehrwert haben. Meistens handelt es sich dabei um sogenannte Content-Scraper, die nur darauf aus sind, den Inhalt der Webseite zu kopieren und erneut zu veröffentlichen.

Manche Bots sind teilweise so aggressiv, dass sie mit mehreren Instanzen pro Sekunde bis zu 10 Zugriffe erzeugen. Als Blog- oder Webseitenbetreiber hat man davon aber absolut gar nichts und man ist besser dran, wenn man diesen Plagegeistern einfach den Zugriff auf die Webseite verbietet.

Regeln zum Aussperren von Badbots und Content-Scrapern

Ich pflege eine Liste mit regulären Ausdrücken, die diese Bots unschädlich macht und ihnen einfach den HTTP-Statuscode 403 Forbidden zurückgibt. Dabei habe ich jeden einzelnen Useragent-String recherchiert, damit keine anständigen Bots auf der Liste landen. Es werden also ausschließlich Bots bzw. Useragent-Strings aufgenommen, von denen man keinerlei Vorteil hat, wenn sie einem die Seite crawlen.

Die Liste kommt auch hier zum Einsatz, um solchen Bots zu zeigen, wer das Sagen hat. Die Liste werde ich auch ständig aktualisieren, also lohnt es sich, ab und zu mal hier reinzuschauen.

RewriteEngine On
RewriteBase /

# Wird benötigt wenn die Regeln innerhalb einer
# Apache-Konfiguration verwendet werden sollen:
# RewriteOptions InheritDownBefore

RewriteCond %{HTTP_USER_AGENT} updown_tester [OR]
RewriteCond %{HTTP_USER_AGENT} (spbot|OpenLinkProfiler) [OR]
RewriteCond %{HTTP_USER_AGENT} (Squider|Squider/0.01)$ [OR]
RewriteCond %{HTTP_USER_AGENT} (memorybot|memoryBot) [OR]
RewriteCond %{HTTP_USER_AGENT} ^magpie-crawler/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} SiteExplorer/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} Spiderlytics/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} ProCogSEOBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} ^libwww-perl/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} TurnitinBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} meanpathbot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} SemrushBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} Infohelfer/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} CompSpyBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} AhrefsBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} CareerBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} Moreover/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} BLEXBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} Ezooms/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} Abonti/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} DCPbot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} ^Java/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} oBot/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} ^BOT/[0-9] [OR]
RewriteCond %{HTTP_USER_AGENT} SearchmetricsBot [OR]
RewriteCond %{HTTP_USER_AGENT} OpenindexSpider [OR]
RewriteCond %{HTTP_USER_AGENT} BacklinkCrawler [OR]
RewriteCond %{HTTP_USER_AGENT} ^ssearch_bot [OR]
RewriteCond %{HTTP_USER_AGENT} UnisterBot [OR]
RewriteCond %{HTTP_USER_AGENT} 360Spider$ [OR]
RewriteCond %{HTTP_USER_AGENT} HubSpot\sWebcrawler$ [OR]
RewriteCond %{HTTP_USER_AGENT} seoscanners.net [OR]
RewriteCond %{HTTP_USER_AGENT} SISTRIX [OR]
RewriteCond %{HTTP_USER_AGENT} ^$
RewriteRule ^ - [F,L]

Letzte Aktualisierung: 11.02.2016

Diese Regeln fügt man einfach zu seiner .htaccess-Datei oder in der Apache-Konfiguration hinzu, und schon werden alle Zugriffe mit diesen Useragent-Strings geblockt, so dass die typische 403 Forbidden-Seite erscheint.

Die Zeichenkette [0-9] gehört zu den regulären Ausdrücken und bedeutet, dass dort eine Zahl von 0 bis 9 stehen kann. Überall wo das Zeichen ^ am Anfang ist, bedeutet es, dass der nachfolgende Teil nur am Anfang des Useragent-Strings vorkommen darf. Und der letzte Eintrag ^$ bedeutet, dass der Useragent-String komplett leer sein muss, damit die Bedingung erfüllt ist. Das Zeichen $ steht also für das Ende eines Strings.

Hinweis:
Dies ist ein älterer Artikel von meinem alten Blog. Die Kommentare zu diesem Artikel werden (falls vorhanden) später noch hinzugefügt.

Der Autor

Unter dem Namen »TheBlackPhantom« alias »BlackY« veröffentlichte ich auf meinem alten Blog, BlackPhantom.DE, in der Zeit von 2011 bis 2015 leidenschaftlich Beiträge über Computer, Internet, Sicherheit und Malware. Während der BlackPhantom-Zeit war ich noch grün hinter den Ohren und lernte viel dazu. Mehr Infos vielleicht in Zukunft...