你能在本地主机地址上测试谷歌分析吗?

我必须在本地机器上测试我的新GA帐户。

仅仅通过将谷歌提供的标准代码片段复制到页面上就可以工作吗?

我不想花24小时等着看它是否有效。

194677 次浏览

如果您使用IP或设置域为none,它将工作。 细节:< / p >

http://analyticsimpact.com/2011/01/20/google-analytics-on-intranets-and-development-servers-fqdn/

这个问题在今天仍然有效,但技术已经发生了变化。旧的Urchin跟踪器已弃用和过时。新的异步谷歌Analytics跟踪代码使用略微不同的代码来实现相同的结果。

解析经典-异步语法- ga.js

在谷歌分析上设置跟踪域为none的当前语法如下:

_gaq.push(['_setDomainName', 'none']);

谷歌analytics将在localhost上触发_utm.gif跟踪器请求。您可以通过在您喜欢的浏览器中打开开发人员工具,并在页面加载期间观察网络请求来验证这一点。如果运行正常,您将在网络请求列表中看到一个_utm.gif请求。

2013年更新通用分析- analytics.js

谷歌发布了一个新的分析版本,叫做“通用分析”。(2012年底或2013年初)。在我写的时候,这个程序还在BETA阶段,所以上面的代码仍然推荐给大多数已经安装了谷歌分析的用户。

然而,对于使用新的analytics.js代码的新开发,谷歌分析,高级配置- Web跟踪文档表明我们可以用这个新代码在本地主机上测试Universal Analytics:

ga('create', 'UA-XXXX-Y', {
'cookieDomain': 'none'
});

有关Universal Analytics高级配置的更多详细信息,请查看链接文档。

更新2019

Global Site Tag - gtag.js和Universal Analytics - analytics.js都会自动检测到localhost。您不需要对配置进行任何更改。

如果gtag.js检测到你正在本地运行一个服务器(例如localhost),它会自动将cookie_domain设置为'none'

——developers.google.com

我也遇到了同样的问题,所有的解决方案都不起作用,直到我做了两件事:

明显的代码:

var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXXXX-X']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);

我添加了localhost另一个FQDN -域名。我在Windows系统上通过编辑:

C:\Windows\System32\drivers\etc\hosts

文件中,我输入了以下内容:

127.0.0.1   my.domain.org

然后我去解决http://my.domain.org/WebApp,这是服务页面包含谷歌分析JS。

如果你在unix上,编辑/etc/hosts得到相同的结果。

它认为谷歌应该把Intranet配置放在GA FAQ中。他们只说你需要FQDA。是的,你做,但不是为了让他们访问你,你只需要在HTTP请求中有主机属性。

我认为FQDN的另一个原因是COOKIES!cookie是用来跟踪数据的,如果你没有FQDN, cookie就无法设置,JS代码就会停止,不会得到gif。

2014年更新

现在可以通过简单地将域设置为none来实现。

ga('create', 'UA-XXXX-Y', 'none');

看:https://developers.google.com/analytics/devguides/collection/analyticsjs/domains#localhost

监控跟踪标签的一个更简单的工具是使用Chrome扩展(可能可用,或其他浏览器的等效)- 谷歌标签助手。这将显示什么标签正在发射,它发现了什么问题,甚至打破像电子商务值这样的东西,以便阅读。还可以使用谷歌标签管理器,并可以处理页面上的多组标签。

我只是想添加什么被说到目前为止,这可以节省很多头痛的,你不需要等待24小时,看看它的工作原理,对总概述需要24小时,但在报告选项卡,在左侧有一个链接实时结果,目前它将显示如果有人访问你的网站,我也没有为它设置'cookieDomain': 'none' localhost,我的设置是在'auto'和它工作得很好(我使用MVC 5),在此之上,我在head标签的末尾添加了脚本,如这个页面中所述的谷歌:

将您的代码片段(未更改,完整)粘贴到您想要跟踪的每个网页。将它粘贴在</head>结束标记之前。

在这里是关于如何检查分析是否正常工作的更多信息。

现在你的问题的答案是肯定的,它将通过复制标准代码片段工作。根据文档,现在标准代码段具有自动cookie域配置:ga('create', 'UA-XXXXX-Y', 'auto');,其中cookie域是自动确定的。

此外,如果analysis .js检测到您正在运行服务器 本地(例如localhost),它自动设置cookie域为 “没有”。< / p >

以下是Tuong Lu Kim的回答:

假设:

ga('create', 'UA-XXXXX-Y', 'auto');

如果analysis .js检测到你在本地运行一个服务器(例如localhost),它会自动将cookie域设置为“none”。

摘录:

自动cookie域配置将_ga cookie设置在最高级别域上。例如,如果您的网站地址是blog.example.co。js将cookie域设置为。example.co. Uk。此外,如果analysis .js检测到你在本地运行一个服务器(例如localhost),它会自动将cookie域设置为“none”。 .

推荐的JavaScript跟踪代码片段为cookieDomain字段设置字符串'auto':


来源:https://developers.google.com/analytics/devguides/collection/analyticsjs/cookies-user-id#automatic_cookie_domain_configuration

2019年的答案

最佳实践是为你的开发/登台和你的生产服务器设置两个独立的属性。 你不希望测试污染你的分析数据,如果你被迫这样做,设置过滤器是不愉快的

也就是说,谷歌分析现在有实时跟踪,如果你想跟踪活动或交易,滞后是约1分钟,直到数据显示在页面上,只要你选择当天。

例如,你创建Site和Site Test,每一个都有UA-XXXX-Y代码。

在你的应用程序逻辑中,你提供分析JavaScript,检查你的环境和生产使用你的Site UA-XXXX-Y,登台/开发使用Site Test。

您可以使用这种设置,直到您了解了GA的前前后后,然后删除它,或者如果您需要不断地进行更改(您将首先在开发/登台测试它),则保留它。

资料来源:个人经历,各种文章。

我最近遇到了这个问题,我发现探索谷歌在调试分析上的新文档很有帮助。它实际上并不关心向谷歌Analytics发送跟踪信息,我只是想确保事件正确触发,调试工具给了我所需的信息。YMMV,我意识到没有完全回答这个问题。

对于那些使用谷歌标签管理器与谷歌分析事件集成的人,你可以做那些家伙提到的从GTM自己设置cookie标志为none

enter image description here

打开GTM >变量>谷歌分析变量>,并将cookies标签设置为none

在花了大约两个小时试图想出一个解决方案后,我意识到我有广告拦截器阻止我打电话给GA。一旦我把它们关掉,我就可以走了。