Neues in der Kategorie Movable Type Plugins

So wie schon das Akismet-Plugin hat auch das Twitter-Plugin HashTag für Movable Type ein Proxy-Problem und ignoriert die MT-Systemeinstellung für Proxies. Auf diesem hier Server hat das Jail (das ist quasi eine virtuelle Maschine) aus Sicherheitsgründen nicht wirklich Internet-Zugriff, daher kommen auch keine Tweets nach draußen.

Also muss mal wieder ein Patch her, dann klappts auch mit dem Proxy; der Patch muss auf plugins/HashTag/lib/HashTag/Plugin.pm angewendet werden und passt zur aktuellen Beta-Version 2.5:

--- original_Plugin.nopm.pm	2009-07-17 23:45:12.000000000 +0200
+++ Plugin.pm	2009-11-27 19:38:58.000000000 +0100
@@ -137,6 +137,10 @@
     require LWP::UserAgent;
 
     my $ua = LWP::UserAgent->new;
+    # set HTTP Proxy when set in config file (AF)
+    if (my $proxy = MT::ConfigMgr->instance->HTTPProxy) {
+        $ua->proxy('http', $proxy);
+    }
 
     $ua->credentials('twitter.com:80','Twitter API',$cfg->{tw_username} => $cfg->{tw_password},);
Mit dem Patch  ließt das Plugin aus der passenden Konfigurations-Direktive HTTPProxyin mt-config.cgi die Angaben für den Proxy und setzt diese.

Nach dem Update auf Movable Type 4.2 habe ich das TypePad AntiSpam Plugin aktiviert bzw. mit einem API-Key freigeschaltet.

Nur: weder Kommentare noch Trackbacks wurden geprüft, stattdessen landere im Aktivitätslog jeweils eine Fehlermeldung: TypePad AntiSpam error: Bad Request.

Leider nicht sehr aussagekräftig, und via Suchmaschinen ließ sich auch nichts passendes finden.

Über den Source bin ich dann auf die Lösung gekommen:

$agent->post("http://$key.$SERVICE_HOST/$API_VERSION/$meth", [%ENV, %$sig]);

„Bad Request“ sieht nach einer LWP-Fehlermeldung zu einem kaputten Request aus, zum Beispiel fehlendes Protokoll oder Domain mit unerlaubten Zeichen. Und da alle relevanten Elemente außer dem API-Key Konstanten sind, lag es nahe den Fehler bei diesem zu suchen.

Und tatsächlich: beim Kopieren des Keys hat sich ein Leerzeichen eingeschlichen, und ein Leerzeichen ist nunmal kein gültiges Zeichen in einem Domainname. Also: Aufpassen und keine Leerzeichen mitkopieren!

Nach der Korrektur funktioniert alles und sowohl Kommentare als auch Trackbacks werden geprüft. Jetzt bin ich mal gespannt, ob es besser klappt als mit Akismet, das gelegentlich Spam-Trackbacks nicht erkannte und die Basiserkennung von Movable Type überstimmte. TechCrunch hat auf jeden Fall ganz gute Erfahrungen gemacht.

Jetzt habe ich hier schon eine Weile das Akismet-Plugin für Movable Type installiert, aber es fällt mir meist durch Fehleinschätzungen auf. Zumindest bei Trackbacks: Movable Type hält echte Trackbacks fast immer korrekterweise für legitim, aber Akismet selst solche selbst von dem gleichen Server für Spam – also landen sie im Spam-Ordner.

Und umgekehrt kam eben mal wieder ein Spam-Trackback durch: Akismet hielt tatsächlich den folgenden Trackback für Ham anstatt Spam:

Zoo porn zoo sex free zoo sex sex zoo xxx zoo fuck.

Zoo porn sex porn xxx and sex porn xxx porn. Free pics zoo porn. Zoo porn. Free zoo porn movies. Free zoo porn vids. Horse porn beast porn dog porn animal porn zoo. Beast sex zoo sex animal porn. Animal sex zoo free porn bestiality. Zoo sex beastiality...

Bei sowas sollte eigentlich schon jeder halb-schlaue Spam-Filter anschlagen, aber nicht so Akismet. Dieses Problem scheint auch bei anderen aufzutreten, siehe Zweite Chance bei Akismet. Robert Basic hingegen scheint zu frieden zu sein.

Mit Trackback-Spam habe ich eigentlich nicht zu kämpfen, da Movable Type diesen bei mir bisher mit seinen eigenen Regeln selbst zu 100% erkennt (IP vom Trackback-Client und die IP des verlinkten Servers müssen stimmen). Und gegen Kommentar-Spam helfen die Captchas – das ist zwar von der Benutzerfreundlichkeit her nicht schön, aber funktioniert zuverlässig.

Daher steht Akismet bei mir erstmal auf der Abschussliste – erhält aber vorerst noch wie beim SEO eine (zweite oder eher letzte) Chance ...

 

Update:

In der Zwischenzeit habe ich Akismet abgeschaltet. Und TypePad Antispam auch, auch das erkennt viele legitime Trackbacks fälschlicherweise als Spam.

 

MT-Akismet, das Akismet-Plugin für Movable Type, unterstützt in Version 1.1 von Hause aus keinen Proxy für die nötigen Zugriffe zum Akismet-Server. Der folgende kleine Patch, angewandt auf extlib/MT/Akismet.pm, behebt das Problem:

--- orig-Akismet.pm	2008-02-17 23:57:41.000000000 +0100
+++ Akismet.pm	2008-02-18 00:05:00.000000000 +0100
@@ -58,6 +58,9 @@
     my $class = shift;
     return $AGENT if $AGENT;
     $AGENT = LWP::UserAgent->new;
+    if (my $proxy = MT::ConfigMgr->instance->HTTPProxy) {
+        $AGENT->proxy('http', $proxy);
+    }
     $AGENT->agent(join '/', $class, $class->VERSION);
     $AGENT->timeout(10);
     $AGENT;

Mit dem Patch  ließt das Plugin aus der passenden Konfigurations-Direktive HTTPProxy in mt-config.cgi die Angaben für den Proxy und setzt diese.

Den Patch habe ich auch an Timothy Appnel, den Autor des Plugins, geschickt, so dass er hoffentlich in der nächsten Version enthalten ist.

Akismet ist ein Online-Service zur Spam-Bekämpfung, das MT-Akismet ist das offizielle Plugin für Movable Type. Bis auf dieses Problem war die Installation ansonsten problemlos ;-)

Aktuelle Kommentare

  • Niels Dettenbach: ...schade eigentlich, das es PyPerl nicht mehr wirklich gibt. Zwar weiter lesen
  • Alvar Freude: Kannte ich noch nicht, danke für den Hinweis; allerdings ist weiter lesen
  • Ben Sieverts: Ich vermisse noch folgendes Buch auf der List: Effective Perl weiter lesen
  • Alex: Ich schlage einfach mal ganz unverschämt bei diesem Beitrag die weiter lesen
  • Marcel: Oke, danke für den Tipp. Schade natürlich. Wird euer Buch weiter lesen
  • Alvar: Nein, leider ist das noch nicht fertig. :-( Es gibt weiter lesen
  • Marcel : Hallo! gibt es dein Buch zu Perl6 schon? Wo kann weiter lesen
  • air max 2009: Nimm ein Paradigma deiner Wahl (z.b. MVC) und lerne Applikationscode weiter lesen
  • vTasker: Was ist das denn für ein MIST? Der Artikel ist weiter lesen
  • Virenschutz-Test: Das ist ja lustig hihi. Der Admin ist wohl nicht weiter lesen

Über dieses Archiv

Diese Seite enthält aktuelle Einträge der Kategorie Movable Type Plugins.

Aktuelle Einträge finden Sie auf der Startseite, alle Einträge in den Archiven.