(新) Google reCAPTCHA V2 リキャプチャ設置、設定方法

こちらは、クリックタイプの (以前の) reCAPTCHA 設置方法です。
新しい reCAPTCHA V3 の設置方法については、
(新) Google reCAPTCHA V3 リキャプチャ設置、設定方法 をご覧下さい。

“reCAPTCHA リキャプチャ” は、現在メールフォーム、もしくは会員登録の際等に用いられるスパム防止機能です。こちらは、クリックで認識する新しいタイプ (reCAPTCH V2) の設置方法を記していきます。

Google reCAPTCHA に登録してAPIキーを入手する

  1. まず始めに http://www.google.com/recaptcha/intro/
    Google reCAPTCHA ページにアクセス、右上の青ボタン Get reCAPTCHA をクリック。Google アカウントをお持ちの方はそのまま次へ、無い方は登録して頂く必要があります。
  2. 次に各情報を入力します。
    Label には任意の情報を (登録するウェブサイトのコンタクトフォーム等) 、
    Choose the type of reCAPTCHA では、ウェブサイトの場合はreCAPTCHA V2 を選択。
    するとドメインが入力される様になるので、ドメインを入力。こちらは基本は1つでいいはずです。最後に Terms of Service をクリックして登録。
  3. その後 Site Key Secret Key の2つが生成されていると思います。
    Site Key は後に貼り付けるJavascript に使います、
    Secret Key はサーバー側に使用する PHPコード (PHPの場合) に使用します。Secret Key は表に出さない様に気おつけて下さい。

head タグ内に以下のコードを貼り付け (head の閉じる直前に)

<script src='https://www.google.com/recaptcha/api.js'></script>

次に、Javascriptコードをフォームに貼り付ける

自分のフォームに実際にreCAPTCHAを設置します。まずは表側、下記のJavascriptを好みの場所に設置します。通常は送信、確認ボタン直前に入れるのがいいかと思います。ここの data-sitekey に先程入力したサイトキーを入力して下さい。

 <div class="g-recaptcha" data-sitekey="Site Keyを入力"></div>

これで自分のフォームに reCAPTCHA が設置されたはずです。(必ず入手したAPIがドメインと符号しているのを確認して下さい。違うドメインの物だと表示されません。)しかしこのままでは動きませんので、次はサーバー側の設定に移ろうと思います。

PHPの設定をする

次はサーバー側の設定。Ajaxやその他の言語の設定方法もあるそうなのですが、今回はPHPでの設定を説明したいと思います。今回は、メールの受取側のスクリプトに以下のコードを設置。

<?php
$captcha;
if(isset($_POST['g-recaptcha-response'])){
  $captcha=$_POST['g-recaptcha-response'];
}
if(!$captcha){
  echo '<h2>reCAPTCHA にチェックを入れて下さい。</h2><br>';
  echo "<a href=\"javascript:history.go(-1)\">Go Back</a>";
  exit;
}
$response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=Secret Keyを入力&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']);
?>

今回は Secret Key を使います。secret= 内に取得したコードを入れて下さい。受け取りに失敗した場合、のメッセージは必要に応じて書き換えて下さい。

後はこのコードをメールの受取のスクリプト内に組み込みます。以下に簡単なフォーム例を作りましたので、参考にしてみて下さい。実際メールは送信されないので試してみてもらっても結構です。

http://ja.samurai-web-works.com/demo/recaptcha-v2.html

いかがでしたでしょうか?実際 PHP コードに組み込むと、なると多少のコード書き換え知識が必要になります。今回は、reCAPTCHA 部分のみの公開にさせて頂きますが、これで基本的な Google reCAPTCHA リキャプチャ設置 はお分かりになったと思います。
前のバージョンの物より大分シンプルな設置方法になったと思います。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です