Erst heute hatte ich zu meiner Verwunderung bemerkt, dass die ein Jahr alte Webnotiz über Referer-Spam plötzlich auf Platz 1 der häufig gelesenen Webnotizen stand. Als ich daraufhin die Logfiles überprüfte, sah ich für diese Woche mehrere tausend Zugriffe mit gefälschten Referern auf diese eine Seite. Ich nehme an, sie wurde als Ziel ausgesucht, weil sie bei Google unter dem Suchbegriff "Referer" unter den ersten hundert rangierte.
Ich hatte den Logfile-Spam in letzter Zeit ignoriert, man gewöhnt sich an den Müll in den Access-Logs; aber die aktuellen Ausmaßen toleriere ich nicht mehr. Filtern kann ich die Referer in der .htaccess wohl noch am ehesten anhand der enthaltenen Keywords, z.B.:
RewriteEngine On
RewriteCond %{HTTP_REFERER} ^http://.*(adipex|carisoprodol|cialis|hydrocodone|phentermine) [NC]
... und dann aussperren:
RewriteRule .* - [F,L]
... oder auf localhost weiterleiten:
RewriteRule .* http://localhost/ [R,L]
... oder noch besser auf den Referer selbst zurückleiten:
RewriteRule .* %{HTTP_REFERER} [R,L]
Aber damit hat man immer noch Einträge in den Logs. Diese könnten dadurch verhindert werden, dass in der httpd.conf des Apache Webserver die Zeile zum CustomLog folgendermaßen ergänzt wird:
CustomLog logs/access.log common env=!nolog
... und die RewriteRule entsprechend erweitert:
RewriteRule .* - [F,L,E=nolog:1]
Leider hilft mir dies im Fall der Webnotizen wenig, da ich hier keinen Zugriff auf die Server-Konfiguration habe. Falls jemand noch eine andere Möglichkeit kennt, das Spamming der Logs zu verhindern, wäre ich dankbar, wenn er mir diese mitteilt.