02時32分55秒 [Web関連]
コメントスパム対策として、句読点の有無をチェックする方法を採用してたんですけど、文字コードがSHIFT-JISの場合に穴がある点を先日ネタにしました。
→「正規表現での句読点と英字A・Bの関係」
それでも、ある程度の英文スパムは防げるので良かったんですけど、なんか最近、防げずに漏れる投稿が増えてきました。単純にスパム投稿量が増えてきたのか、それともスパム本文の文章量が増えたのか分かりませんが。(^_^;)
で、仕方がないので、句読点をチェックする方法はやめました。
まあやめなくても、正規表現でチェックする直前で、文字コードをEUCとかに変更してからチェックすればいいんですけど。
そうではなく、今度は「ひらがな」の存在をチェックするように変更しました。
日本語の文章なら、かなり短くても「ひらがな」が含まれない可能性は低いと思います。(特にコメントとして投稿される日本文だと。)
なので、「ひらがなが含まれなければ日本語の文章ではない」と言ってもまあ構わないでしょう。
そして、「ひらがな」の文字コードはどの1バイトを抜き出しても半角英数字と重なりませんから、うまくチェックできます。
最初からこうしてれば良かったかな。(^_^;)
しばらくは、この対策で行こうと思います。
まあこれも、「スパム投稿のほぼ全部が英語圏から来る」という前提があるからこそ使える対策ですが…。
この日記へのコメントはお気軽に! コメント数:0件
コメント数: 0件