コメントSPAMや、TrackBackSPAMがうっとぉしいのは、ホンマに、かなん話です。
で、先日、タカさんにURL変更のメールを差し上げた際に、さりげな〜く(嘘)相談したところ、NP_Blacklistがハヤリとのこと。
さっそく、yuさんちをはじめ、いろいろと情報を収集。
どーやら、コメントSPAM用のプラグインらしい。
そんでもって、NP_Trackbackにちょこっと、修正を加えて、Trackbackの際にも、NP_Blacklistのフィルタが効くようにできると。
ま、やってみっか。
とりあえずは、最新版のNP_Blacklistをここから落っことしてくる。
カレントヴァージョンは、0.98finalらしい。(2005/4/24現在)
心配性の私は、全テキストをeucのLFに変更してからUpload。
ん?
だそうな。
そっか。また、いらんことしたわけね。
FTPクライアントソフトの設定で、.phpとかは、textだよんとやった後に、元々d/lしたnp_blacklist.zipを解凍しただけのものを、そのままu/l。
あら、うまくいっちゃった。
あ、settingsフォルダ内のファイルのパーミッションを646あたりに変更するのを忘れると、定義ファイルの更新ができないので注意。
さて、コメントSPAMの影響で、コメントを受け付けない設定していたのをコメントを受け付けるモードに戻す。
これで、test4を含むコメントをテストしてみる。*1
「おりゃ〜!わけのわからん投稿するなっぼけっ!」的なページに飛ばされる。
OK!
で、NP_Blacklistの少し前のversionでは、うっとぉしいSPAMコメントも投稿通知メールが届いてしまっていたらしいのだが、現ヴァージョンでは、メールは来ず、言うこと無し!
で、あとは、あれですな。
Trackback SPAM への対応をさせないと・・・
で、yuさんちのこのへんとか、Nucleus(JP)フォーラムのこのへんとかを参考に*2NP_Trackback.php を修正と。
yuさんちのここによりますと、どうやら、0.96final以降のヴァージョンを使用している場合は、NP_Trackback.php への修正は、ちょいと異なるとのこと。
ほ〜せずているさんちのここの手法を例によってパクらせて頂く。
要は、NP_Trackback.php の400行目(より少し前)あたりにある
<?php
// 2. check for errors
if (!$tb_id) return 'TrackBack ID is missing (tb_id)';
if ($rss == 'rss'){
$this->rssResponse($tb_id);
return ;
}
if (!$url) return 'URL is missing (url)';
?>
ってのの後に、
<?php
//_hack: prevent trackback spam
if ($manager->pluginInstalled('NP_Blacklist') and
$plugin =& $manager->getPlugin('NP_Blacklist')) {
$testString = $url.' '.$title.' '.$blog_name.' '.$excerpt;
$spamcheck = array ('type' => 'trackback', 'data' => $testString);
$manager->notify('SpamCheck', array ('spamcheck' => & $spamcheck));
}
?>
を追加すると。
何やらうまくいっているよーだ・・・
ま、変なTrackback SPAM が来てみないとわからんが。
世の中、えらーい人が、他人のことを考えてくれてると、こんなに余人は楽なのだなぁ。
ありがたい・・・
他人の迷惑を顧みないお馬鹿なやつのまき散らすSPAMを、賢い素晴らしい方が簡単な対応を考えてくれるという話。
お馬鹿も賢い方も、会ったことのない人たちだが、あたしゃその間で、てんてこまいだとさ。
ふぅ・・・
コメント
NucleusでSPAM対策
やっとNucleusでSPAM対策を実施しました。
今まではSPAMコメントやSPAMトラックバックがきたら、MySQLのデータを直接SQLのDELETE文でLIKE条件をつけて一括で削除してたんですがだんだん面倒になってきたのでとうとう…