Captcha-i-j5 Captchaモジュール日本語画像認証改造版+フォントランダム選択
前回のCaptcha-i-j3 Captchaモジュール日本語画像認証改造版 | Drupal-J.comを公開してから、ほぼ2ヶ月が過ぎ去りました。
いやぁ、早いモノです(^_^)b
その間に、オリジナルのCaptchaは5.x-2.0が公開されました。
当然、これに対応させた改造は可能か?と言うことを目論んで試しにローカル環境に入れてみたのですが、試してみた感じでは使い物になってないな・・・というのが正直な感想。
ブラウザによって、認証率が雲泥の差になってしまいました。
- IEおよびIEエンジン搭載のカスタムブラウザ・・・0%
- Firefox・・・数回に1回
しかも、コメントなどで、プレビュー必須にしておくとプレビュー→送信で、それぞれCaptchaを経なければならないという動作をしました。
つまり、プレビュー時にCaptcha入力、送信時にCaptcha入力・・・と、面倒なだけで使い物にならないような仕組みになっていました。
オリジナルが安定しない、特に認証率の低さを考えると現状ではまだ使い物になっていないという感想です。
ま、ワタシのローカル環境がおかしいのかもしれませんけどね(^_^;)
で、そんなこんながありまして5.x-2.0への改造時に機能アップのつもりで考えていたフォントのランダム選択を、旧バージョンのへの改造版に反映させたモノにしました。
fontフォルダに入っているttfフォントから、ひとつしか認識しなかったモノを、fontフォルダ以下のttfフォントからランダムに選んだひとつを実行の都度選択して画像を生成するようにしてみました。
フォントがランダムに変わるので、OCR対策として少しランクアップします(笑)
この改造版から、翻訳文字列を変更しましたのでネットワーク配信で更新があっても、アキレス腱である出題部分は上書きされることが無くなりました(笑)
その分、ロケールDBをほんの少しだけ無駄に消費します(笑)
それから、作成済みの認証用画像、画像表示用のCSS、それらを格納しているフォルダの削除対象時間を24時間以降から60分以降に変更しました。60分経過した用済みフォルダ以下を実行時に削除します。
時間が気になる人はcaptcha.moduleの253行目$deltime = $gotime - (60 * 60);の( )内を調節してください。ちなみに、秒単位です。24*60*60ならば、24時間です。
0は推奨しません。テストしていないというのもありますが、少なくとも、ブラウザで読み込みが完了する前に削除してしまった場合には認証用の画像が表示されなくなります。
基本的にはワンタイム(1回しか使われない)のモノですので、そこを見極めて調整するのは自由にできます1。
ま、一応、こんなところがいいところですかね?
えっ?
今までのをひとつにしてランダムに出題できるようにしろ?
うーむ(^_^;)
- 1. Captchaの設定でできないの?とか言われそうですが、改造版のコンセプトは改造部分をソース上で1カ所にまとめる・・・なので、設定画面に項目を出すとなると、そこから逸脱してしまうので対応する予定なしです<(_ _)>
| 添付 | サイズ |
|---|---|
| 19.29 KB | |