コメントスパム対策
コメントスパムが少し多くなってきたので、Movable Typeのコメントスパム対策をやってみました。
副作用が心配なもの(MTBlackListなど?)は除外して、オーソドックスな方法で入れてあります。
(でも、ちょっと凝った部分もあります)
早くスパムが来ないかなぁっと心待ちにしてるのですが、こういう時に限ってなかなか来ないので先に公開します。(笑)
まず、テンプレートのコメントフォームに以下を追加します。
[quote][code]
[/code][/quote]
これは、要するにコメントを投稿する際にパラメータとして記事のタイトルを渡しますよということです。
Individual Entry Archive, Comment Listing, Comment Preview, Comment Errorの四箇所に入れます。
これを入れたら、Individual Archiveの再構築が必要になります。(古いエントリに反映させるため)
次に、[MT]/lib/MT/App/Comment.pm に以下を追加します。sub post の中で、$entry を得た直後になります。
(行番号は少しずれているかも知れません)
[quote][code]69,81d68
< #-- 2004/04/20 miya; reject comment spams
< {
< my $uip = $app->remote_ip;
< my $author = $q->param('author') || '';
< my $url = $q->param('url') || '';
< my $email = $q->param('email') || '';
< unless (defined $q->param('tid') && $q->param('tid') eq $entry->title) {
< $app->log("$uip/$author/$url/$email banned because comment posted without valid tid");
< return $app->error("comment posting is not permitted");
< }
< }
< #-- end
[/code][/quote]
なぜmt-comments.cgiじゃないかと云えば、エントリ内容(タイトル)の参照や標準のロギングを使いたかったからです。
タイトルをパラメータにしたのは、日本語である(ことが多い)のと、毎回異なる(だろう)といった事からです。
ログ(メインメニューの「Movable Typeのログ確認」)には以下のように表示されます。
[quote][code]2004.04.21 01:47:44 210.zzz.xxx.yyy
210.zzz.xxx.yyy/miya/http://japo.net/miya//XXXXXX@japo.net
banned because comment posted without tid (折り返しています)
[/code][/quote]
コメント
こんにちは。MTのコメントスパム対策使わせていただきました。公開してくださってありがとうございました。 助かりました。
トラックバックを送らせていただきました。
投稿者: pon2 | 2004年7月29日 11:49
ご利用ありがとうございます。
適用されたのは、livedoorのサイトではなくMTのサイトなのですね?(当り前ですね)
投稿者: miya | 2004年7月29日 16:08
MT3でも同様に可能です。
http://japo.net/miya/archives/20040729_180420.html
投稿者: miya | 2004年7月29日 18:28
こんにちは。そうなんです。MTのサイトなのですが、こちらは映画と本のことしか書かないことにしていたので、その話を らいぶどあに書いたということで。その都合でらいぶどあからのトラバでした。ややこしくてすみませんでした。
最近リキがはいらなくて バージョンアップとかそういうのが全然やる気にならないんです。
miyaさんが使い勝手が良いと書かれていたので、秋くらいになったら 考えてみようかなあと思い始めました。
投稿者: pon2 | 2004年7月29日 19:32
BlogPeopleに登録させていただきました。
懐かしい映画/本もあって、じっくり楽しませてもらいます。
投稿者: miya | 2004年7月29日 19:38
今日、効果を確認して小躍りしています。
久々に「そういえばログ確認したら効果がわかるんだったなあ」とログを見てみたら!
結構沢山ひっかかってました。
感謝感激です。ありがとうございました。
BlogPeople どうもありがとうございます。へなちょこサイトなので申し訳ないです,,,、こちらも感謝感激です。
投稿者: pon2 | 2004年8月 3日 21:38
pon2さん、うまくいって何よりです。
投稿者: miya | 2004年8月 4日 08:54
こんにちわ。
miyaさんの対応利用させていただきました。(TB夜中にしたぶん)
今朝ちゃんとSpamコメントはじいたのがログに残ってました。(ええ、もうひっかかってます(^^;
どうもありがとうございますでふ(ぺこ)
投稿者: Yacchan | 2004年8月 8日 15:23