0

我有一个网站托管在服务器 X (86.115.xx.xxx) 上,域名为 www.AAAAAA.ro。我对网站进行了重大更改,并重新命名了它。我想在同一台服务器上托管新版本的网站,但我想将其域更改为 www.BBBBBB.ro。我已经从服务器上删除了旧网站的源代码,并在服务器上添加了新网站的代码。目前 www.AAAAAA.ro 和 www.BBBBBB.ro 域都指向 X 服务器。www.AAAAAA.ro 域被永久重定向(301 代码)到 www.BBBBBB.ro 域。使用以下 htaccess 语句进行重定向:

RewriteCond %{HTTP_HOST} !^(www\.)?BBBBBB\.ro$ [NC]
RewriteRule ^(.*)$ http://BBBBBB.ro/$1 [R=301,L]

我的问题:如果我在新网站(具有 www.BBBBBB.ro 的网站)上使用为 www.AAAAAA.ro 域生成的分析代码,它会起作用吗?请记住,www.AAAAAA.ro 域被永久重定向(301 代码)到 www.BBBBBB.ro 域。

谢谢,米海德斯帕

4

1 回答 1

0

这取决于。

如果您在 GA 代码 ( _setDomainName) 中明确设置域,并且它被设置为您的旧域,那么 GA 代码将不会触发。这是因为 GA 将无法写入其 cookie。因此,您需要确保这不是在您的新域上设置,或者将其设置为正确的值。

除此之外,还要注意代码将“工作”,因为它将继续跟踪。但是,GA 使用第一方 cookie。这意味着您已经建立的访问者(在旧域上设置)的 cookie 不会转移到新域。这意味着任何已经访问过您的网站并拥有 cookie 的访问者基本上都会以新访问者的身份开始。

不幸的是,保留当前访问者并不是一件容易的事,除非您愿意暂时做一些客户端重定向,而不是服务器端重定向。

为什么?

所以事情就是这样.. 你看,GA 在确保访客信息在携带时不会被篡改方面非常狡猾。

通常它的完成方式是您_setAllowLinker在页面代码中使用,然后_link在给定链接的 onclick 中使用。这使得 GA 将其 cookie 信息附加到目标 URL 以传递到新域。(注意:如果您确实想进行客户端重定向,那么您基本上只需调用_link页面加载调用而不是 onclick。它将处理重定向)。

所以这就是事情变得狡猾的地方。除了 cookie 和值之外,GA 还传递了一个__utmk参数,简而言之,它是由其他参数和一小部分当前域的灵魂合并生成的哈希值。ga.js 中有一些复杂的 js 技巧来实现这一点,到目前为止,我还没有找到带有服务器端代码的逆向工程版本。

现在,假设您将自己的灵魂卖给魔鬼以学习如何重现他们的魔术,那么您现在面临下一个问题:在重定向中传递这些东西。

.htaccess在服务器配置文件或 w/e中获取其他 cookie 并将它们作为参数传递是“足够简单的” 。但是该环境中没有可用的脚本语言,因此您必须使用RewriteMap引用外部脚本。这还不算糟糕,尽管它确实使事情有些复杂。哦,RewriteMap也不能在其中声明,.htaccess所以你不能在那里填充;必须把它放在服务器配置文件中。如果您已经在那里执行重写规则,那么很容易,但是如果您正在执行重写规则,.htaccess那么请注意这一点。

所以总结一下:

  1. __utmk您必须对在 中生成的确切方式进行逆向工程ga.js,并将其移植到服务器端脚本
  2. 您必须使用RewriteMap调用该脚本来生成该值
  3. 将 __utm Xcookie 和 __utmk 参数添加到重定向的 URL
  4. 此外,在您的新域上,您需要添加_setAllowLinker到您的页面 GA 代码,以便它会查找 URL 参数并使用它们

替代这个烂摊子?如前所述,如果您愿意暂时使用 GA 的_link页面加载调用作为从 siteA 到 siteB 的重定向方法,这将允许 GA 代码将参数(包括生成的__utmk变量)附加到目标 URL 并成功迁移新网站的访问者。

注意:您还需要document.referrer在推送中将 附加到您的目标 URL _link,然后在您的新域上添加一些代码以获取它并_setReferrerOverride使用该值弹出,以便 GA 将记录原始引荐来源网址而不是虚拟重定向页面.

您甚至可以RewriteCondition检查__utmcookie 是否存在,如果存在,则将访问者重定向到具有 GA 重定向的单个页面。如果它不存在,让 RewriteRule 像往常一样重定向到新域。这将减少使新访客不得不跳过箍的情况。

让它客户端重定向多长时间?这取决于您最长的转换周期。您网站的转化/目标是什么?例如,您有购买渠道吗?访客购买商品平均需要多长时间?一天?一个月?选择最长的转化周期,然后等待那么长的时间。可能会有一些边缘情况从裂缝中掉下来,但这应该比失去所有这些情况更容易接受。或者,如果您愿意,可以无限期地保留它。

如果你不想这样做呢?好吧,选择一个好时机来处理被擦除的访问者信息板,打开重写规则,然后处理它。

于 2013-10-31T16:47:33.590 回答