平衡点


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 の場所が悪いみたいだった.

…今の現状では完全無視になってますな. これは. うーん.

また明日. …というか, 明日から福岡行ってきます. 暑そう.


連絡先など
最近の日記
  • 2025/04/30
    • 1. dovecot の更新でハマる.
  • 2025/04/15
    • 1. glibc の executable stack
  • 2025/04/03
    • 1. 居室ルータのネットワーク上流が死んでた.
  • 2025/03/25
    • 1. Wanderlustで日本語の添付ファイルを扱う defadvice を nadvice に書き換える(失敗?)
  • 2025/03/06
    • 1. Emacs30 で lookup-el が動かなくなった.
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|04|05|06|10|12|
2025|02|03|04|
Back to Top ▲