ひと段落。まだドキュメント類を山ほど書かねばならないんだけど。
ちょっと前から、この日記を悪意のあるSEOに利用したと思われるコメントの投稿が続いていて、ちまちまとフィルターにドメインを追加したり、もうロシア・韓国からのコメントはイラン、とかやっていたのですが、いたちごっごの様相を呈してきたので、もうちょっと抜本的な対策を実施すべくクイックハック。
コメントspamのパターンとしてはURLを貼り付けるというシンプルなもの。コメント内のリンク数の上限は以前から設定しているんですが、制限数以下のリンクの入ったコメントspamを大量に投稿するという手に出てきました。かといって、リンクを一切禁止にすると、有用なリンク付きのコメントまでスポイルしてしまうのでそれはやりたくない。
というわけで、コメントの投稿対象となった日付を分かるようにして、フィルターに以下を追加。
elsif comment.name != 'TrackBack' && comment.subject < Time::now - 31536000上記パッチと設定で1年以上前の日記にはトラックバックはできるけど、コメントはできないようになります。これでしばらく様子見です。
false
上記パッチのテストをしようとしたら、この日記にトラックバックできないことが判明。./tb.cgiを置いてませんでした。apacheの設定で.rbファイルをCGIとして認識しないようにしていたのになかなか気付かず、ハックよりもこっちのほうに時間をとられてしまった。