2010-08-25 10 views
3

Pour stocker des données Google Analytics, je souhaite accéder au cookie du domaine de GA "__utmz" (domain=.example.com) à partir de mon sous-domaine www (domain=www.example.com). Est-il possible de lire le cookie de ce domaine à partir d'un sous-domaine? Si oui, comment puis-je faire cela avec Rails?Lire le cookie de domaine du sous-domaine avec Rails

cookies[:__utmz] ne semble pas fonctionner avec tous les navigateurs.

Je sais que je pourrais configurer mon application en définissant le domaine de cookie à '.example.com' dans mon production.rb (config.action_controller.session = { :domain => ".example.com" }), mais je préfère ne pas (parce que je ne veux pas que le cookie de mon sous-domaine www être partagé entre tous les sous-domaines).

J'espère que ma question est assez claire ...

Merci par avance pour votre aide (et désolé pour les erreurs possibles dans ma langue ...)

Répondre

1

La seule façon de permettre une application sur subdomain.example.com pour lire un cookie de www.example.com serait pour www.example.com de définir un cookie example.com de haut niveau.

Cela permettrait subdomain.example.com de le lire, mais il permettrait aussi tous les sous-domaines de example.com voir ce - que vous avez dit que vous ne voulez pas.

Pour suivre ce à travers - les cookies sont récupérés par leur nom et scope par le navigateur. S'il y a plusieurs cookies avec le même nom, vous aurez des collisions. Je crois que le cookie example.com, plus générique, sera le seul jamais retourné pour subdomain.example.com si les deux cookies example.com et subdomain.example.com existent.

TL; DR

Ne pas utiliser les cookies de domaine de niveau supérieur, sauf si vous voulez que les données soient le cookie faisant autorité dans tous les domaines (comme l'authentification unique). Si vous faites cela pour Google Analytics, vous allez entrer en collision sur vos différents sous-domaines.