niversal analytics を使用しています。ユニバーサルアナリティクスはファーストパーティCookieを作成します_ga
_ga=1.2.286403989.1366364567;
286403989はclientIdです
1366364567はタイムスタンプです
とは 1
および2
_ga cookieにありますか?
_ga=1.2.286403989.1366364567;
これはバージョン番号です。 Cookie形式が将来変更される場合。現時点では1に修正されているようです。上記は古い形式です。新しいCookieのこの値は「GA1」に設定されています
このフィールドは、異なるパスまたはドメインに複数のCookieがセットアップされている場合に正しいCookieを特定するために使用されます。
デフォルトでは、Cookieはパス/
およびdocument.location.hostnameのドメイン(www。プレフィックスを削除)でセットアップされます。
Sub.example.comで_ga Cookieを設定し、example.comで別のCookieを設定できます。ブラウザーでのCookie APIの動作方法は、どちらが正しいCookieであるかを判断する方法がないためです。
したがって、2番目の数値は、ドメインでのコンポーネント(ドットで区切られた)の数です。
デフォルトのパスは/
ですが、cookiePath
オプションをga.create
メソッドに渡すことで変更することもできます。それを渡すと、このフィールドはダッシュで区切られた2つの数字になります。 2番目の数字は、パス内の数字のスラッシュです。
これらの数値を使用して、analytics.jsスクリプトは、複数のCookieが設定されている場合に使用されるCookieを正しく識別できます。
例:cookieを自分のサイトのみに保存し、他のサブドメインやフォルダーからは見えないようにするために、sub1.sub2.example.com/folder1にあるサイトがあるとします。次の設定を使用できます。
ga('create', 'UA-XXXX-Y', {
'cookiePath': '/folder1/',
'cookieDomain': 'sub1.sub2.example.com'
});
この場合、Cookieは次のようになります。
_ga=1.4-2.XXXXXXXX.YYYYYYY
これは、ランダムに生成されたユーザーIDです。異なるユーザーを識別するために使用されます。
これは、そのユーザーに初めてCookieが設定されたときのタイムスタンプです。
new Date(1366364567*1000)
> Fri Apr 19 2013 06:42:47 GMT-0300 (BRT)
これは、userIdが衝突した場合にユーザーを一意に識別するためにも使用されます。
クッキーはAPIではないことを言及する価値があります。将来的には完全に変更される可能性があります。 _ga cookieを直接読み書きすることはお勧めしません。 analytics.jsなどのトラッキングライブラリのいずれかを使用して、Googleアナリティクスとやり取りする必要があります。好奇心以外のこの情報の使用はあまりありません。
Cookieを直接読み書きしている場合は、間違っています。
これは役立つと思います。
/**
* Get Google Analytics UID
* @return int
*/
public function getGAUID() {
$uid = 0;
if ($_COOKIE['__utma'])
list($hash_domain, $uid, $first_visit, $prew_visit, $time_start, $num_visits) = sscanf($_COOKIE['__utma'], '%d.%d.%d.%d.%d.%d');
elseif ($_COOKIE['_ga'])
list($c_format, $c_domain, $uid, $first_visit) = sscanf($_COOKIE['_ga'], 'GA%d.%d.%d.%d');
return $uid;
}