クロスドメインがもたらす問題点と解決するための設定方法
クロスドメインとは、1つのサイト内に2つ以上のドメインがまたがっている状態を指します。
放置していても個人情報が盗まれたり、ウイルスを拡散させたりすることはありません。しかし、サイトに訪れたユーザーの行動が誤って表示されるというデメリットがあります。ユーザーの行動を分析してマーケティングをおこなう人にとっては致命的なはずです。

クロスドメインとは
クロスドメインとは、1つのサイト内に2つ以上のドメインがまたがっている状態を表す言葉です。クロスドメインの状態になっていると、ユーザーの行動が把握できないというデメリットが生じます。
ドメインとは
ドメインとは、ネットワーク上の住所であるIPアドレスに名前を付けたものです。URLにおいてのドメインは、https://のあと、メールアドレスであれば@以降がドメインとなります。
例を挙げると、https://aaaaaa.org/bbbbbbというURLであればaaaaaa.orgがドメインに該当します。cccccc@dddddd.comというメールアドレスの場合は、dddddd.comがドメインです。
ホームページを見る際、ブラウザはホームページのファイルが置いてあるサーバーに対してページを表示する要求を出します。
要求を受けたサーバーはブラウザに対してホームページのファイルを送り、実際にパソコンの画面に映し出されます。ドメインは、ブラウザがページを表示してほしいという要求を出す際に使用される情報です。
クロスドメインの仕組み
WEBサイトを運営する際、ドメインを設定する必要があります。WEBサイトは、トップページからお問い合わせフォームのような、入口から出口までを同じドメイン内で完結されていることが多いです。
しかし、一部のサイトでは2つ以上のドメインを用いて、WEBサイトを構築させているサイトもあります。
1つのサイトに複数のドメインが存在していることは、制作時間やコストを削減するためによく見られる光景です。
例えば、ショッピングカート機能を作る時間やコストを削減するために、商品紹介ページだけを自作して、カートページは既存のショッピングカート機能を使用するとします。このとき、商品紹介ページとカートページのドメインは異なってしまいます。
そして、ユーザーがカートページに移動する際に、異なるドメインに移ることをクロスドメインと呼びます。
なお、1つのドメインで完結していても、クロスドメイン状態になっていても、WEBサイトの見た目には違いがありません。
クロスドメインの例
クロスドメインの例として以下のサイトが挙げられます。
- ECサイト
- 多言語に対応しているサイト
ECサイトによっては、商品を紹介するページとカートや入力フォームのページで異なるドメインを用いているサイトがあります。
例えば、商品を紹介しているページのドメインはshop.comですが、カートページに移行すると同時にshopcart.jpに変わることをクロスドメインと呼びます。
すべてのECサイトがクロスドメインになっているわけではありません。ASPというシステムを使用し、インターネットを経由してECサイトを作るとクロスドメインになる傾向にあります。
クロスドメインになると解析に支障をきたす
クロスドメインは、Googleアナリティクスを用いた分析の際に支障をきたします。
Googleアナリティクスとは、WEBサイトをさまざまな視点から分析できる無料ツールです。このGoogleアナリティクスを用いて、以下のようなユーザーの行動を分析しようとします。
Google検索でAショップというECサイトに流入。その後、商品ページで商品を選び、カートページへと移動。なお、Aショップの商品ページとカートページは別ドメインである。 |
上記のユーザーは、実際に検索流入でAショップを訪れているはずです。しかし、Googleアナリティクスでは、商品ページからの流入だと判断されてしまうので、正確な分析ができません。
WEBマーケティングやブログにおいて、ユーザーの行動分析は重要です。クロスドメイン状態では、ユーザーの行動が正確に把握できないのでデメリットだといえます。
クロスドメイントラッキングを分析する方法
サイトがクロスドメイン状態の場合、訪れたユーザーの行動を正確に測れません。Googleアナリティクスが、ドメイン間を移動するときにセッションが切れてしまい、流入の参照元を誤認識してしまうからです。
そのため、正確な情報を分析するにはクロスドメイントラッキングを設定する必要があります。
クロスドメイントラッキングとは
クロスドメイントラッキングとは、異なるドメイン間でGoogleアナリティクスのセッションを共有する計算方法です。クロスドメイントラッキングを設定すると、異なるドメイン間をまたいでも、ユーザー行動が正確に分析できるようになります。
クロスドメイントラッキングを設定すべき人
クロスドメインを設定すべき人は以下のとおりです。
- ショッピングカートASPを利用している人
- リピートユーザーが行き来する複数サイトの管理者
上記に該当する人はクロスドメイントラッキングの設定をすることをおすすめします。
クロスドメイントラッキングをGAで設定する方法
クロスドメイントラッキングはGoogleアナリティクスで設定できます。
手順は以下のとおりです。
- Googleアナリティクスのトラッキングコード内の一部を変更
- 参照元除外リストの追加
- フィルタ設定
Googleアナリティクスのトラッキングコード内の一部を変更
はじめにGoogleアナリティクスのトラッキングコードを一部変更します。トラッキングコードとは、Googleアナリティクスを設定した際に<head>内に記載したものです。
変更前のトラッキングコードは以下のとおりです。
<!– Global site tag (gtag.js) – Google Analytics –> <script async src=”https://www.googletagmanager.com/gtag/js?id=プロパティのIDを記載”></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag(‘js’, new Date()); gtag(‘config’, ‘プロパティのIDを記載’); </script> |
このトラッキングコードを以下のように変更します。
<!– Global site tag (gtag.js) – Google Analytics –> <script async src=”https://www.googletagmanager.com/gtag/js?id=プロパティのID”></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag(‘js’, new Date()); gtag(‘config’, ‘プロパティのID’, { ‘linker’: { ‘domains’: [‘対象となるドメイン1’, ‘対象となるドメイン2’] } }); </script> |
プロパティのIDの部分には、対象サイトのプロパティIDを実際に記載します。
また、対象となるドメインの部分には、またがっているドメイン2つをそれぞれ記載してください。
このようにトラッキングコードを書き換えることで、ユーザーが異なるドメイン間を移動しても、Googleアナリティクスが自動で修正してくれます。
フィルタ設定
続いてフィルタの作成と追加をおこないます。フィルタを設定する理由は、ドメインごとのアクセスデータの合算を防ぐためです。フィルタの設定は、クロスドメイン対策の他にも、自社サイトに訪れた自社従業員をデータから除外する際にも用いられます。
フィルタの設定をする手順は、まずGoogleアナリティクスの管理ボタンをクリックしフィルタというタブの中にあるフィルタを追加を開きます。

次にフィルタ名を入力して、フィルタの種類はカスタム、その下の選択肢は詳細を選択してください。フィールドAではホスト名を選択して(.*)と入力し、フィールドBではリクエストURIを選択して$A1$B1と入力します。最後に保存をクリックして完了です。

参照元除外リストの追加
次に参照元を除外するための設定をします。参照元を除外するための手順は以下のとおりです。
Googleアナリティクスの管理ボタンをクリックし、プロパティのアクセス管理というタブの中にあるトラッキング情報から参照元除外リストを選択します。続いて、参照の除外を追加をクリックしてください。

最後に、除外したいドメインを入力し、作成をクリックします。
入力する際は、https://aaaaaa.comのようなURL全部ではなく、aaaaaa.comのようにドメインだけを入力してください。

クロスドメイントラッキングが設定ができないケース
クロスドメイントラッキングを設定しようとしたが設定できない場合、以下が原因となっている可能性があります。
- GETパラメーターが無効である
- リンクがアンカータグではない
GETパラメーターが無効である
クロスドメイントラッキングが設定できない場合は、まずGETパラメーターが無効になっていないか確認する必要があります。
GETパラメーターとは、ブラウザがサーバに対して送信するデータを特定の形式で表記したもので、送信先を特定するURLの末尾に記載されるのが通例です。
ショッピングカートASPのなかには、GETパラメーターが無効になっているものもあるので確認してください。万が一、GETパラメーターが無効になっていると、クロスドメイントラッキングの設定をしても別ユーザーとしてカウントされます。
GETパラメーターが無効か有効かを確認する場合は、各ショッピングカートASPに問い合わせるようにしてください。
アンカータグではないリンクである
クロスドメイントラッキングが設定できない場合、リンクがアンカータグになっていないことがあります。
アンカータグとは、リンクをHTMLで書く際に使用する<a href=”リンク先URL” >というタグです。
クロスドメイントラッキングが設定できない場合、アンカータグではない以下のタグが使用されている可能性があります。
- inputタグ
- buttonタグ
入力フォームを通して異なるドメインを移動する際、アンカータグにて移動するように設定すると解決可能です。
まとめ
