
今まではCakePHP+kcaptchaコンポーネントでコメントスパムを撃退していたのですが、自分でコメントを書くときに「人間でもこのCaptcha読めないじゃん・・」と思いました。
コメントスパムを撃退することは必要ですが、それによってコメントしてくださる方まで撃退していては本末顛倒かと思ったので、日本語CAPTCHAを導入しました。
kcaptchaコンポーネントの使い方はIntegrate CakePHP with Kcaptcha | The Bakery, Everything CakePHP : Articlesにあるのですが、ちょっと改造して使っておりましたのでそれはまたの機会に紹介します。
今回の日本語Captchaはいたって簡単、日本語の画像を作ってそれをアップ、validateCaptcha()などを作って中でその日本語と等しいかを見るだけです。
webroot/imgフォルダ内に日本語文字が記載された画像(仮に、captcha.png)を置き
とし、
コメント投稿部で
としてやるだけです。
参考:Geekなぺーじ : 海外からのコメントスパムを全て撃退