平衡点
2006/09/13
_ コメントスパム対策
また来たよ. うざったいな.
そんな訳で, 英数のみの場合にはスパムとして弾くようにしてみた.
module TDiary module Filter class SpamFilter < 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 =~ /href=/ false elsif comment.body.scan( %r|https?://| ).size > 2 false elsif comment.body.match(%r|^[!-~ ]+$|m) false else true end end end end end
どんな感じかな.
…ふむ. 「ASCII 行だけ」があると駄目ですが, まあ良いか.
ついでに,
もあててみた.
どうも, index.rb での ForceRedirect が効かないみたいで, しばし悩む.
にあったように, TDiary::ForceRedirect の場所が悪いみたいだった.
…今の現状では完全無視になってますな. これは. うーん.
また明日. …というか, 明日から福岡行ってきます. 暑そう.