Home > MovableType > ベイジアンフィルタと連携(スパムトラックバック対応

ベイジアンフィルタと連携(スパムトラックバック対応

ちょっと前のエントリで、MT-Bayesianと連携してスパムコメントをうけても自動リビルドしないようにしましたが、これだとスパムトラックバックをうけた時にリビルドしてしまいます。
なので、スパムトラックバックをうけても自動リビルドしないようにしてみました。
3日ほど動かしてみましたが、問題もなく100%の精度で弾いてくれています。
まぁ 同じスパムばかりだというのもありますけど。。。
が、スパムを受けた後に正規のコメントを頂くと、やはりリビルドがかかってしまうのでこれをどうにかしたいところではあります。
リビルド回避ではなく、やはり削除してしまう方がいいのでしょうけど、それだと誤った判定をした時の対処ができないのでちょっと辛いですねぇ
何かいい方法はないのだろうか。。。

基本は前回のと同じですが、今度はトラックバックなので、lib/MT/App/Trackback.pm を編集します。

$ping->title(defined $title && $title ne ” ? $title : $url);
$ping->blog_name($blog_name);
$ping->save;

となっている部分があるので これを探します。
私の使っているMT2.661の日本語化版では194行目でした。
この部分に以下のように追記します。

$ping->title(defined $title && $title ne ” ? $title : $url);
$ping->blog_name($blog_name);
$ping->save;
require MT::Bayesian;
my $by = MT::Bayesian->new;
$by->new_bayesian( {blog_id => $tb->blog_id, ping_id => $ping->id} );
if ($by->prob*100>80) {
#$ping->remove;
#$by->remove;
$app->log(“SpamTrackBack: $user_ip”);
return $app->handle_error(‘スパムトラックバックの可能性があります’);
}

コメントの時と同じで、if ($by->prob*100>80) の80の部分がSpam Probabilityに当たるもので、上記の設定だと、スパムの可能性80%以上だと判定されるとリビルドされなくなります。

このエントリーを含むはてなブックマークはてなブックマーク - ベイジアンフィルタと連携(スパムトラックバック対応 この記事をクリップ!Livedoorクリップ - ベイジアンフィルタと連携(スパムトラックバック対応 BuzzurlにブックマークBuzzurlにブックマーク FC2ブックマークへ追加 Bookmark this on Delicious Digg This

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://blog.eternalmiracle.net/taka/archives/2005/02/08-010135/trackback
Listed below are links to weblogs that reference
ベイジアンフィルタと連携(スパムトラックバック対応 from eternal miracle blog mode

Home > MovableType > ベイジアンフィルタと連携(スパムトラックバック対応

BlogPeople
RSS Feed
メタ情報

Return to page top