【问题标题】:Google Analytics Config for one website with multiple domains为具有多个域的一个网站配置 Google Analytics(分析)
【发布时间】:2012-11-21 17:58:46
【问题描述】:

我们有两个域为完全相同的 SaaS 应用程序提供服务。由于遗留的第 3 方集成,我们不能丢弃旧域或重定向它(即 301)。我知道从 SEO 的角度来看这很糟糕,但这个应用程序是不公开的,所以这不是问题。

我正在寻找一种使用 Google Analytics 作为ONE 网站来跟踪他们的方法。我看过其他类似情况的海报,但我有一个没有解决的问题。我还需要能够跟踪子域。 (即,partner1.old-domain.com || partner1.new-domain.com)

所以要求如下所示:

作为一个站点跟踪所有流量:(old-domain.com || new-domain.com)

跟踪所有子域流量(配置文件过滤器?):(partner1.old-domain.com || partner1.new-domain.com)

注意:尽量避免使用_gaq.push(['_setAllowLinker', true]);。据我了解,这并不适用于真正的跨站点/跨域情况。

【问题讨论】:

    标签: google-analytics


    【解决方案1】:

    您描述的设置是多顶级域设置。问题是用于保持 Google Analytics 会话的 cookie 只能存储在子域或根域级别,因此当您有多个顶级域时,您需要从一个 TLD(顶级域)传递此会话数据给对方。

    首先让我们看一个更简单的例子,多个子域。为了跟踪这种情况:

    • partner1.old-domain.com
    • partner2.old-domain.com

    我们需要将 cookie 限定为根域,在本例中为“old-domain.com”,这意味着跟踪可以在 partner1 和 partner2 子域中持续存在。这可以通过使用方法简单地实现:

    _gaq.push(['_setDomainName', 'example.com']);
    

    但是,在添加新 TLD 时,这会变得更加复杂。添加时,我们得到:

    • partner1.old-domain.com
    • partner2.old-domain.com
    • partner1.new-domain.com
    • partner2.new-domain.com

    为了使这个设置起作用,我们需要使用 setDomainName 方法和 setAllowLinker

     _gaq.push(['_setDomainName', 'example.com']);
     _gaq.push(['_setAllowLinker', true]);
    

    存在跨多个域保持跟踪会话的最佳方法。 cookie 无法被多个 TLD 读取,这意味着在“old-domain.com”上设置的 Analytics cookie 无法被“new-domain.com”读取,因此 Google Analytics 访问者会话无法持续。

    解决这个问题的方法是绕过cookie,它是这样做的:在执行从'old-domain.com'到'new-domain.com'的链接时,首先将会话信息传递到该 URL 然后由 Google Analytics 在第二个域上解析,从而允许访问者会话的持久性。

    Google 提供了一种通过“_link()”函数执行此操作的方法。此功能需要与域之间的所有链接一起使用。这既是从旧域到新域,也是从新域到旧域。

    <a href="http://partner1.new-domain.com/"
      onclick="_gaq.push(['_link', 'http://partner1.new-domain.com/']);
      return false;">
        Continue to the new site.
    </a>
    

    希望这已经清除了它。我了解您不想使用 setAllowLinker,但这是最好的方法。

    更多信息在这里:Set up cross-domain tracking for multiple domains

    【讨论】:

    • 感谢您精心安排的回复。这可能(希望)比我最初提出的要简单一些。该站点的工作方式几乎不可能跨越域、子域或两者。每个单独的客户只知道他们特定的顶级域名、子域组合。据我了解,这否定了 _link() 和 _setAllowLinker() 的值。对吗?
    • 如果用户在 old-domain.com 并手动键入新域(或键入旧域并重定向到新域),是否会聚合为同一用户?
    【解决方案2】:
    猜你喜欢
    • 1970-01-01
    • 2011-11-26
    • 2013-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多