2006-04-25 [長年日記]
_ つっこみスパム対応
対応しました。
「ひらがなorカタカナが1文字も入っていない場合はスパム」
というルールでフィルターを変更しました。
英数字だけだったり、漢字だけだと拒否します。
欧州の方、中国の方、ごめんなさい。m(_ _)m
また、URLが3つ以上だったり、
yahooとかhotmailのメアドが入力されていても拒否です。(これは以前から。)
フィルターはこんな感じです。最後に載せておきます。
(半角の¥マークが?に置き換わっちゃってます。その部分はtdiary公式ページを参照してください。)
フィルター作成に際しては紅玉日記さんの記事を参考にさせてもらいました。
ありがとうございます。(^^)
と、いうことでみなさん、テストを兼ねてツッコミ祭開催です!(笑)
参考文献 紅玉日記 フィルター module TDiary module Filter class AntispamFilter < Filter def comment_filter( diary, comment ) mailregexp = r = /^[0-9a-zA-Z_.-]+@[?(?)%!0-9a-zA-Z_$.&+-,'"*-]+(?.[?(?)%!0-9a-zA-Z_$.&+-,'"*-]+)*?.[a-zA-Z]{2,6}$/ if /@(yahoo|hotmail|gmail|aol|leroy|ablare|gmx)?.com$/ =~ comment.mail false elsif comment.mail.length > 0 and mailregexp !~ comment.mail false elsif comment.body.scan( %r|https?://| ).size > 2 false elsif comment.body !~ /[ぁ-んァ-ヴー]/ false else true end end end end end