使用 Google Analytics 对子域进行跨域跟踪
Posted
技术标签:
【中文标题】使用 Google Analytics 对子域进行跨域跟踪【英文标题】:Cross-domain tracking for subdomains with Google Analytics 【发布时间】:2012-01-16 20:08:41 【问题描述】:我刚刚设置了谷歌分析跨域跟踪。我已经看到了一些示例,但想确保我已经正确完成了。我遵循的文档在这里:@ 987654321@
我基本上有3个网站,都是子域。
one.mysite.com
two.mysite.com
three.mysite.com
我已将以下几行添加到默认的 Analytics 脚本中,并确保我对 _setAccount 使用相同的值。
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
现在...我有点困惑的部分是 _setDomainName 变量。
我应该在所有三个网站上将其保留为“无”并让 _setAllowLinker 完成工作,还是我的意思是像下面那样单独指定域?
_gaq.push(['_setDomainName', 'one.mysite.com']); // used on one.mysite.com
_gaq.push(['_setDomainName', 'two.mysite.com']); // used on two.mysite.com
_gaq.push(['_setDomainName', 'three.mysite.com']); // used on three.mysite.com
【问题讨论】:
【参考方案1】:对于跨子域的流量,您确实不需要需要设置_setAllowLinker
,尽管这并没有什么坏处。该功能的作用是能够传输您的 Google Analytics cookie 以进行跨域跟踪。该功能由_link
启用,对于您的用例来说不是必需的。
如果您像这样将setDomainName
设置为none,它所做的就是将域哈希设置为1
,并将cookie 的域设置为当前域。这对跨子域跟踪没有帮助,因为子域之间的流量将被视为引荐。
如果您没有要跟踪的第三级子域(如 foo.bar.example.com
),您只需将域名设置为域的根目录,如下所示:
_gaq.push(['_setDomainName', 'mysite.com']); // used on any mysite.com domain or subdomain
如果您认为您需要 3 级子域跟踪,您应该在 mysite.com
前面加上一个前导句点,如下所示:
_gaq.push(['_setDomainName', '.mysite.com']); // used on any mysite.com domain or subdomain as well as third level subdomains
你在这里做的是两件事。一,您正在声明 cookie 应该设置在哪个域(在这种情况下,上述 2 个域是相同的)并且您正在配置将用于创建“域哈希”的域,这是 Google Analytics cookie 中第一个以句点分隔的值。 Google Analytics 使用“域哈希”来防止 cookie 冲突;如果您在 setDomainName 中配置的值的域哈希值与 ga.js
检测到的 cookie 开头的值不一致,它将创建一组新的 cookie 并创建一个全新的访问(其中,在你的情况下,这不是你想要的。)
【讨论】:
啊...所以我只需要 _gaq.push(['_setDomainName', 'mysite.com']);跟踪三个子域,并且锚上不需要 _gaq.push(['_link'...? 正确。只要您不跨单独的根域进行跟踪。即,如果您有mysite.com
和my-shoppingcart-site.com
,则_link
是必需的。基本上,你应该关注Tracking Across a Domain and Its Subdomains
查看链接到的示例是否意味着我需要'.mysite.com'?
您可以选择.mysite.com
或mysite.com
。如果您已经在使用(none)
方法,那么排除句点的唯一优势不存在(它与您的主域的默认值兼容),因此,您不妨直接使用.mysite.com
。跨度>
以上是关于使用 Google Analytics 对子域进行跨域跟踪的主要内容,如果未能解决你的问题,请参考以下文章
在 iframe 中运行 Google Analytics?
Google Analytics 跨域跟踪和 _setDomainName()
每天可以对 Google AdWords 和 Analytics 进行多少 API 调用?
Google Analytics / Piwik + MVC 的多租户支持?