Trackback Spam を一括削除

- スポンサーリンク -
自分で書いても良かったのですが、今回喰らったスパムの発信元は有名みたいで、同じ事を考えている人はちゃんといました。「F's Garage:MT TrackBackスパムを消す」に一括削除 SQL が記載されています。
DBからデータを削除したあとに、エントリを再構築することでblog上からも削除されます。
tbping_blog_name の部分が「poker」「texas」の部分一致になっています。今流行っているのはコイツなので、このままの SQL を phpMyAdmin 等で実行すればOK。参考SQL文
delete from `mt_tbping` WHERE tbping_blog_name like '%poker%' or tbping_blog_name like '%texas%' or tbping_source_url like '%poker%' or tbping_source_url like '%texas%' ;
その他の対策をまとめた記事は「TBスパムボット 来襲!」にありました。参考になりました。
消し方はコレでよいとして、trackback spam そのものを拒否する patch を実装しなければなりませんが、きっと先人がいるだろうと思って検索してみたらありました。「BiancaのTrackBackSpam対策【トラックバックスパム対策】」です。これで、mt-tb.cgi に対策を打ちます。ただ、これだけでは突破してくる spam があるので、海外からの trackback をそもそも拒否する対策を入れました。「海外からのコメントスパムを完全撃退」と同様の処理で、
require Drk::JpOnly;
if(!(Drk::JpOnly->new)) {die('error')};
という記述を先ほどの対策の後に入れればOKです。副作用として、ごくたまに国内からの trackback も拒否されてしまいますが、多くの場合は正しく動作します。
if(!(Drk::JpOnly->new)) {die('error')};
- スポンサーリンク -
コメントやシェアをお願いします!