Software Guide

Die besten Tipps, Anleitungen und Downloads

Ihre Werbung auf Software Guide

Sie möchten in dieser Box oder an anderer Stelle dieser Webseiten eine Werbung schalten? Sehen Sie sich dazu am besten einfach mal die verschiedenen Möglichkeiten an.


Wichtiges WordPress-Plugin-Update: Simple Trackback Validation

16. Juni 2007 von Michael | Wordpress

Viele Blogbetreiber mit WordPress als Blog-System setzen das von mir geschriebene Plugin Simple Trackback Validation ein.

Das Plugin prüft bei jedem ankommenden Trackback, ob auf der Ursprungsseite auch wirklich auf die Zielseite verlinkt wird: wenn nicht, so wird der Trackback als Spam eingestuft und je nach Einstellung gelöscht, als Akismet-Spam gekennzeichnet oder in die Moderations-Warteschleife gestellt.

Das Plugin hatte jedoch folgendes Problem: Es wurde erst ausgelöst, nachdem ein Trackback in die Datenbank geschrieben wurde und nicht schon vorher. Dies hatte außerdem zur Folge, dass ein vom Plugin als Spam eingestufter Trackback z.B. noch die Prüfung durch andere Plugins wie z.B. Akismet durchlaufen hat: wurde nun ein durch ‚Simple Trackback Validation‘ als Spam gekennzeichneter Trackback von Akismet nicht als Spam eingestuft, so wurde eine E-Mail-Benachrichtigung an den Artikel-Autor abgesetzt, aber der Trackback selbst korrekt behandelt (gelöscht bzw. als Spam gekennzeichnet oder in Moderation gesetzt).

Lösung:
Ich habe nun die Version 2.0 veröffentlicht, die u.a. folgende neue Features bietet:

  • Neues Anti-Spam-Konzept: Es wird nun (als erstes) geprüft, ob die IP-Adresse des Trackback-Versenders übereinstimmt mit der IP-Adresse der per URL verlinkten Webseite: stimmt die IP nicht überein, so wird der Trackback als Spam gekennzeichnet.
    Diese Neuerung deckt wirklich sehr zuverlässig Spam-Trackbacks auf (nach meiner bisherigen Erfahrung > 99%), da von Spammern eingesetze Spam-Scripts i.d.R. nie auf deren Kunden-Servern laufen.
    Vielen Dank in diesem Zusammenhang auch an Roland für seine Ideen.

  • Sämtliche Trackbacks werden vom Plugin geprüft BEVOR diese in der Datenbank gespeichert werden. Wird nun in den Plugin-Optionen «Discard trackback» unter dem Punkt «How to deal with spam trackbacks?» ausgewählt, so findet kein Datenbank-Eintrag statt, was eine erhebliche Performance-Verbesserung bringt.
  • Trackback-Log: Um nachvollziehen zu können, ob das Plugin zuverlässig seinen Job erledigt, habe ich eine Option eingebaut, um sämtliche Aktionen mitzuloggen („Enable Log“), so sieht das ganze dann aus:
    Log

Ich habe das Plugin erst seit kurzem im Testeinsatz und es verrichtet zuverlässig seine Dienste. Ich empfehle Euch, unter „Other Options“ das Logging per „Enable Log“ für die ersten Tage zu aktivieren, damit Ihr seht, was abgeht. Nach ein paar Tagen aber das Logging dann besser aus Performance-Gründen deaktivieren.

Es gibt übrigens noch einen Spezialfall an Trackback-Spam: Manche Spammer setzen auf der Ausgangsseite für wenige Sekunden/Minuten einen Link zur Zielseite, dieser wird aber schnell entfernt. Daher habe ich in Erwägung gezogen, per WordPress-Cron-Job-Funktion die URL-Prüfung vom Plugin zeitverzögert ausführen zu lassen. Aus Performance-Gründen sehe ich aber derzeit davon ab, zumal die jetzt eingebaute IP-Prüfung auch einen (Groß)teil dieses Spams aufdecken sollte.

Informationen zum Artikel:

Weiterblättern im Blog:

Was ist ein Trackback?

13 Trackbacks/Pings:

  • 1

    Basic Thinking Blog » Simple Trackback Validator

    Pingback vom 17. Juni 2007, 2:43


    Fatal error: Uncaught Error: Call to undefined function eregi_replace() in /kunden/151212_80993/webseiten/wp/wp-content/themes/sw-guide2/functions.theme.php:465 Stack trace: #0 /kunden/151212_80993/webseiten/wp/wp-content/themes/sw-guide2/comments.php(84): swg_formatCommentExcerpt('[...] hat das n...', 180) #1 /kunden/151212_80993/webseiten/wp/wp-includes/comment-template.php(1471): require('/kunden/151212_...') #2 /kunden/151212_80993/webseiten/wp/wp-content/themes/sw-guide2/index.php(148): comments_template() #3 /kunden/151212_80993/webseiten/wp/wp-includes/template-loader.php(74): include('/kunden/151212_...') #4 /kunden/151212_80993/webseiten/wp/wp-blog-header.php(19): require_once('/kunden/151212_...') #5 /kunden/151212_80993/webseiten/wp/index.php(17): require('/kunden/151212_...') #6 {main} thrown in /kunden/151212_80993/webseiten/wp/wp-content/themes/sw-guide2/functions.theme.php on line 465