Kinstaでは、ジオロケーション機能を使用して、サイト訪問者の位置情報に応じて、ウェブサイトで表示されるコンテンツを調整することが可能です。

ジオロケーションは、MyKinstaの機能の一つです。サイト訪問者のアクセス元である場所に基づいてトラフィックを誘導する役割を果たします。高い柔軟性のもと、条件毎に特定の情報を提供できます。

ジオロケーションとは?

ジオロケーションとは利用者の位置情報を扱う技術で、IPジオロケーションとは、IPアドレスを特定することでコンピュータの物理的な位置を特定するジオロケーションの一種です。

IPジオロケーションにより収集した情報を利用して、訪問者の所在地に応じて、自動的にサブドメインやページへと誘導するルールを設定できます。これにより、サイトに無限の柔軟性がもたらされ、ユーザーがどこにいるかに基づいて、各ユーザーが見るべきものを正確に決定することができます。

さらに、ジオロケーションとCloudflareのようなエッジベースのキャッシュシステムを組み合わせることで、各ユーザーの所在地に近いキャッシュデータに自動的にアクセスさせることができ、TTFB(Time To First Byte)を大幅に短縮することも可能です。

尚、IPジオロケーションは、GPSなどの他のジオロケーションほど正確ではありませんので、これを念頭に置いておいてください。実際、ユーザー側で、ブラウザのジオロケーションを無効にしたり、仮想プライベートネットワーク(VPN)などのIPクローキングサービスを利用したりすることで、IPジオロケーションによるターゲティングを阻止することができます。

とは言え、エンゲージメントとコンバージョンの観点からパーソナライズされた設計は不可欠であり、IPジオロケーションは、間違いなく、訪問者にサービスを提供する上での重要な要素です。

IPジオロケーションの一般的な使用方法

IPジオロケーションの最も一般的な使用方法は以下の3つです。

  • 訪問者の位置情報に基づくリダイレクト
  • 訪問者の位置情報に基づくページキャッシュの差別化
  • 特定の地域からのトラフィックのブロック

これらのケースをもう少し詳しく見てみましょう。

位置情報に基づくリダイレクト

例えば、「example.com」というサイトを運営しているとします。イギリスからの訪問者をターゲットにした新しいページを構築し、イギリスからの全訪問者を「example.com/uk/」にリダイレクトしたい─そんな時に、MyKinstaの「ジオロケーション」が使えます。

先の条件を必要に応じて拡張することも可能です。例えば、世界各地からの訪問者を想定し、次のような設定にすることができます。

  • ルール1イギリスからの訪問者を「example.com/uk/」にリダイレクトする
  • ルール2アメリカ、カナダからの訪問者を「example.com/us/」にリダイレクトする
  • ルール3メキシコからの訪問者を「example.com/mx/」にリダイレクトする
  • ルール4インドからの訪問者を「example.com/in/」にリダイレクトする
  • ルール5オーストラリアからの訪問者を「example.com/aus/」にリダイレクトする
  • どのルールにも該当しなかった場合:その他の訪問者全てに、そのまま「com」を表示

位置情報に基づくキャッシュの差別化

プラグインテーマの中には、訪問者の位置情報を検知し、その場所に応じて言語や通貨などのコンテンツをカスタマイズする機能を持つものがあります。IPジオロケーションを活用すると、国ごとに個別のキャッシュを構築し、その地域からの訪問者に特別なコンテンツを表示したり、読み込み時間を短縮したりすることができます。

例を挙げて考えてみましょう。あなたのウェブサイト「example.com」では、価格をユーロ(€)、ポンド(£)、ドル($)の3種類で表示しているとします。

そこであなたは、訪問者について検出された位置情報に基づいて、これら3つの通貨を自動的に切り替えるプラグインを利用しました。IPジオロケーションルールを用いて、3つのキャッシュバケットを構築。サイトの高速性と拡張性を維持するためにサーバーのキャッシュを継続して使用しながら、サイト訪問者の場所に応じて適切な通貨を表示します。

  • ルール1アメリカからの訪問者には、キャッシュバケット1のキャッシュを配信し、ドルを表示
  • ルール2イギリスからの訪問者には、キャッシュバケット2のキャッシュを配信し、ポンドを表示
  • どのルールにも該当しなかった場合:その他の全てのサイト訪問者にキャッシュバケット3のキャッシュを配信し、ユーロを表示

このようなIPジオロケーションの設定により、それぞれの買い物客の位置情報に基づいて消費税を自動計算する、といったさらなる利便性の確保も可能です。

ショッピング時の手間は、できるだけ少ないほうがいい─これに異論は無いはずです。「お客さんによる自力での購入金額計算」も、そんな「省くことのできる手間」に含まれます。

位置情報を利用したトラフィック拒否(ジオブロッキング)

ジオブロッキング(位置情報に基づいてサイトへのトラフィックをブロックすること)は、非常にシンプルな活用例です。

仮に、特定の国のお客さんにしか販売できないタイプのビジネスを運営しているとします。そんな時には、MyKinstaのシンプルなリダイレクトルールを使えば、サイトへのアクセスを特定の国からの訪問者のみに簡単に制限することができます。

それ以外の訪問者については、「403 Forbidden」というシンプルなメッセージを表示することも、任意のランディングページにリダイレクトすることも可能です。

IPジオロケーション機能の組み合わせ

また、複数のIPジオロケーションに基づいたルールを組み合わせることで、よりきめ細かな制御を行うことも可能です。例えば、以下のような構成が考えられます。

  • ルール1アメリカからの訪問者を「example.com/us/」にリダイレクト
  • ルール234アメリカ、カナダ、ヨーロッパからの訪問者に別々のキャッシュバケットを適用
  • ルール5宣伝されているサービスが対象外である別の国からの訪問者は、完全にブロックされアクセスできない

IPジオロケーションとWordPress

WordPressには、IPジオロケーションの利用を可能にするプラグインがあります。IP Geolocation Country RedirectGeoTargetingWPであれば、訪問者の位置情報に基づいてサイト内のトラフィックを分岐させることに焦点を当てています。また、CF Geo Pluginのように、マーケティング活動の強化を目的とした、より広範なIPジオロケーション機能を搭載したものもあります。

では、なぜこの機能がMyKinstaに組み込まれているのか─そんな疑問をお持ちの方もいるかもしれません。IPジオロケーション系プラグインの使用ではダメなのか。

まず、プラグインの保持には手間がかかります。サイトのスムーズな稼働を確保するためには、プラグインの更新を随時行う(更新前には、リリースノートを理解するなど)必要があります。また、アップデートによりサイトの一部が壊れてしまうというリスクもあります。

加えて、プラグインはサイトに固有のセキュリティリスクをもたらします。プラグインそのものは第三者により管理されるため、悪意のあるコードがプラグインを介してサイトに侵入し、保管されているデータが失われてしまう(必然的に評判が傷つく)可能性があります。

プラグインは一般的に、サイトに素晴らしい機能をもたらしてくれますが、その数は最小限に抑えることをお勧めします。プラグインは、頻繁に更新され、十分に文書化されているもの、信頼できる開発者によって構築されたものだけをインストールしてください。

ご想像の通り、IPジオロケーションの設定は信頼できるソースに任せたいもの。だからこそ、IPジオロケーション機能をMyKinstaに組み込むことで、クライアント側のセキュリティリスクから保護されたインスタンスのサーバー上でジオロケーションを設定できます。

IPジオロケーションを有効にすると、IPベースの位置情報がPHPに渡され、$_SERVER変数で使用可能になります。

  • Geoip-Country-Name
  • Geoip-Country-Code
  • Geoip-Country-Code3

これらを使用して、IPジオロケーションに基づいた独自のPHPスニペットを書くことができます。

IPジオロケーションとNginx

Kinstaでは、すべてのサイトをNginxサーバーでホストしています。Nginxはオープンソースのウェブサーバーで、そのスピードに加えてリバースプロキシ、ロードバランサー、HTTPキャッシュなどの多様な機能で知られています。

Nginxサーバーの強みのひとつは、GeoIPモジュールに対して、コンパイル済みのMaxMind GeoIP2データベースを使用できることです。このモジュールは、HTTPとTCP/UDPの両方のトラフィックを処理可能で、訪問者のIPアドレスに基づき柔軟なルールを作成できます。

MaxMind社のGeoIP2 データベースは継続的に更新されており、すべてのリクエストについて、詐欺行為ではないか、センシティブなデータでないか(EU圏内の訪問者からの GDPR 関連のリクエストなど)といったスキャンが実行されています。

NginxのGeoIPモジュールについては、公式ドキュメントで詳しく説明されています。

MyKinstaでIPジオロケーションを設定する方法

MyKinstaでサイトにIPジオロケーションを追加することができます。この操作は非常に簡単で、高度な設定も可能です。

ジオロケーション機能を有効にする

始めるには、MyKinstaにログイン後、「サイト」>(サイト名)>「ツール」に移動し、「ジオロケーション」セクションの「利用する」をクリックします。

「ツール」画面でジオロケーションを有効化
「ツール」画面でジオロケーションを有効化

表示される画面で以下のどちらかを選択します。

  1. 国単位で適用国レベルでIPジオロケーションを有効にします。
  2. 国と都市単位で適用:国と都市の両方のレベルでIPジオロケーションを有効にします。

どちらかお好きな方を選択し、「利用する」ボタンをクリックして、ジオロケーション機能を有効にしてください。

国単位または国と都市単位でジオロケーションを適用
国単位または国と都市単位でジオロケーションを適用

しばらくすると、「ツール」画面に戻り、有効化完了のメッセージが表示されます。

ジオロケーションの有効化を伝えるメッセージ
ジオロケーションの有効化を伝えるメッセージ

これで完了です。これにて、KinstaでホスティングしているサイトでIPジオロケーションが有効になり、どの訪問者にどのページを表示するかを指定することができます。

MyKinstaでIPジオロケーションルールとリダイレクトを設定する方法

サイトのIPジオロケーションを有効にしたら、MyKinstaでリダイレクトルールを追加することで、トラフィックを制御できます。

リダイレクト」画面に移動し、「リダイレクトルールの追加」を選択します。

リダイレクト画面でリダイレクトルールを追加
リダイレクト画面でリダイレクトルールを追加

リダイレクトルールの追加」のポップアップ画面で、リダイレクトのパラメータを定義します。

対象トラフィックフィールドなどを含む「リダイレクトルールの追加」画面
対象トラフィックフィールドなどを含む「リダイレクトルールの追加」画面

ここでは、トラフィックのリダイレクトに関するすべてのフィールドに情報を入力します。

  1. ドメイン:リダイレクトを追加するドメインを選択します。サイト内のすべてのドメインでリダイレクトを設定する場合は、デフォルト(「すべてのドメイン」)のままにしてください。
  2. リダイレクト元:トラフィックリダイレクトの起点となるページやディレクトリを入力してください。このフィールドには、regexを使用することができます。
  3. リダイレクト先:トラフィックをリダイレクトする先となるページやディレクトリを入力します。
  4. 対象トラフィック:リダイレクトを適用したいトラフィックの国(国/都市レベルのIPジオロケーションを有効にしている場合には都市もあわせて)を選択します。
  5. HTTPステータスコード:リダイレクトを「一時的(302)」にするか、「恒久的(301)」にするかを決めます。詳細は「IPジオロケーション導入のベストプラクティス」をご覧ください。
「リダイレクトルールを追加」ボタンをクリックすると、MyKinsta経由でリダイレクトルールが有効になる
「リダイレクトルールを追加」ボタンをクリックすると、MyKinsta経由でリダイレクトルールが有効になる

必要な情報の入力が完了したら、下部にある「リダイレクトルールを追加」をクリックします。

これで、IPジオロケーションを活用して、特定の場所からのトラフィックをサイトの別のエリアにリダイレクトすることができました。

作成したルールは、「リダイレクト」画面で編集も可能です。

MyKinstaでリダイレクトルールを追加する方法についてはこちらをご覧ください。

ジオロケーション実装のベストプラクティス

リダイレクトルールの使い方を誤ると、予期しない結果がもたらされ、SEOやサイトのユーザーエクスペリエンスに悪影響が出る可能性があります。このような事態を避けるために、リダイレクトルールの設定時には、以下のベストプラクティスに従うことをお勧めします。

1. ステージング環境で試す

本番環境で設定を変える前に、ステージング環境でリダイレクトルールを試してみましょう。そうすることで、リダイレクトの問題が実際にサイト訪問者に露見する前に、修正にあたることができます。

2. プラグインの競合がないかチェック

WordPressプラグインの中には、独自のリダイレクトで自動的にクッキーを設定するものがあります。そのようなプラグインとMyKinsta ジオロケーション機能を同時に使用すると、競合が発生する可能性があります。

本番サイトにリダイレクトを適用する前に、ステージング環境でプラグインとその設定をテストしましょう。

3. ロケーションに基づいたリダイレクトには302を使う

Google では、ロケーションベースのリダイレクトやサイトの移転には、(301 ではなく)「302 リダイレクト」の利用を推奨しています。詳しくは、300番台リダイレクトのステータスコード一覧をご覧ください。

4. 様々な場所からテストする

VPNやプロキシサービスを使って別の地域からサイトにアクセスし、ロケーションベースのルールを確認してみましょう。海外からアクセスしたユーザーをシミュレーションして、サイトがいかに表示されるのか(リダイレクトを含む)を確認することができます。

5. 検索エンジンのボットをブロックしない

検索エンジンは一般的に、その企業が拠点とする国からクロールを行います。Deepcrawlによると、GoogleとBingの検索ボットはアメリカから、Baiduは中国から、Yandexはロシアからクローリングしています。

不適切なロケーションベースのリダイレクトでこれらの検索エンジンをブロックすると、SEOに悪影響が出てしまいます。サイトにアクセスしてもらいたい検索エンジンを決めたら、リダイレクトルールを慎重に再確認し、ブロックしないようにしましょう。

例えば、英語以外のページにアクセスした米国在住のユーザーを、英語ページに誘導するリダイレクトを設定したとします。そうすると、GoogleやBingのボットもリダイレクトされてしまい、英語以外のページのクロールやインデックスができなくなり、結果的に検索結果から除外されてしまう可能性があります。

なお、都市レベルのリダイレクトはこれらのボットに影響を与えません。検索エンジンがどの国から来ているのかわからない場合は、DNSの逆引きを行ってクローラーの出所とその信頼性を確認することができます。

また、ほとんどの検索エンジンは「クローキングゼロ」というポリシーを採用しているので、検索ボット用の特別なルールを作らないようにすることも重要です(例えば、ユーザーはリダイレクトするものの、ボットはリダイレクトしないなど)。

6. リダイレクトを可視化する

検索ボットをブロックしないことと同様に、リダイレクトを検索エンジンのボットに対して「見えるように」することも重要です。これにはいくつかの方法があります。

  • XMLサイトマップを作成して、各言語版でインデックスさせたいすべてのページを明確にします。このサイトマップを、Google Search ConsoleBing Webmaster Toolsなど、対象とする検索エンジンに送信するようにしましょう。その後、各検索エンジンに付随するツールやサービスを使用して、サイトのクローリングやインデックスの問題がないか確認します。
  • Google Search Consoleの「URL検査」を使って、個々のページがクロールやインデックスの対象になっているかどうかを確認します。
  • Googleの検索演算子を使って、自分のページがインデックスされているかどうかを確認します。ドメインやサブドメインに「site:」を付けることで利用できます(例:「site:example.com/pt/」とすると、このパスを持つインデックスされたURLがすべて返されます)。
  • 多言語サイトである場合は、hreflang属性を実装して、サイト内にあるすべての言語バリエーションの違い(例:英語ページなのか、日本語ページなのか)を明確にします。Google Search Consoleのインターナショナルターゲティングを利用して、hreflangの設定に関する問題を監視することができます。
  • 国のパスごとにGoogle Search Consoleのプロパティを作成し、ターゲットとする特定の国を設定します(一つの言語で複数の国をターゲットにする場合は推奨されません)。

7. クッキーに頼らない

クッキーは訪問者にとって便利なものですが、すべての人がクッキーを使用するわけではないので、その点をお忘れなく。訪問者の中には、仕事や個人的な理由でVPNを利用している人もいるかもしれませんが、その場合、ネイティブクッキーが無効になり、位置情報の検出に問題が生じます。

さらに、クッキーは検索ボットに無視されることもあり、SEOにも支障をきたします。このような理由から、クッキーを使ったリダイレクトは避けることをお勧めします。

また、GooglebotとBingbotはクッキーを保存しませんので、ソリューションの一部としてクッキーを使用する場合は、この点にも注意してください。

まとめ

MyKinstaでは、サイトのIPジオロケーションが簡単に設定できます。具体的には、数回クリックするだけで、国または国/都市レベルでIPジオロケーション機能を有効にできます。そして、お客様のニーズに適したロケーションベースのリダイレクトを設定可能です。

ご不明な点がございましたら、カスタマーサポートスタッフが24時間体制で対応させていただきます。

関連ドキュメント

関連リソース