2012-03-08 826 views
87

我一直在Chrome的控制台上注意到这个错误,现在一会儿:谷歌Analytics(分析) - 无法加载资源:http://www.google-analytics.com/ga.js

enter image description here

我修改了谷歌的脚本,它将记录错误,因为它使用try{} catch{},这是我得到了什么:

enter image description here

我没有注意到相当瓒在统计数据中,总是处于起伏。

此外,这不仅在我的网站上,而且到处都是。我还没有发现错误报告或类似的东西。

如果我在浏览器上访问http://www.google-analytics.com/ga.js,它会正常加载。

有没有人有什么原因的线索?

+2

你在代理或防火墙后面吗? – shanabus 2012-03-08 14:09:00

+4

如果您尝试在浏览器中直接打开[http://www.google-analytics.com/ga.js](http://www.google-analytics.com/ga.js),会发生什么情况?这听起来像你可能会阻止或重定向google-analytics.com在本地HOSTS文件。 – mike 2012-03-08 16:26:51

+18

检查您是否在使用AdBlock或可能阻止加载Google Analytics的内容。 – 2012-03-14 21:20:32

回答

161

这是AdBlock的问题。我禁用了它,现在它正常加载它。

yagudaev建议(阅读下面的答案),为了保持的AdBlock堵塞谷歌分析,你需要编辑提供的片段,并在默认情况下明确使用https://而不是相对协议网址的。这意味着改变

'//www.google-analytics.com/analytics.js'

'https://www.google-analytics.com/analytics.js'

例子:

<script> 
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 

    ga('create', 'UA-XXXXX-XX', 'auto'); 
    ga('send', 'pageview'); 
</script> 
+17

添加白色过滤器'@@ | http:// www.google- analytics.com'帮助/ – 2012-05-19 10:42:06

+1

同样在这里。当这样的事情发生时,它会让你感到非常愚蠢。我记得花了半天的时间修复一些图片,而不是从服务器上下载,只是意识到命名为'banner.jpg'会使AdBlock阻止它。谢谢你的提示。 – Mosselman 2013-03-15 12:25:04

+3

然而,他们允许在Gmail,WTF AdBlock,WTF – 2013-07-21 17:36:28

0

前段时间我在浏览器上发现了同样的东西。 您是否可以使用Google帐户登录Chrome?或者您是否选择以任何方式拒绝收集Google Analytics上的数据?

也许谷歌会记住该选项,并使用它在Chrome当你中烧焦..

BTW。我通常可以在浏览器中打开http://www.google-analytics.com/ga.js,它在自动加载时不起作用。

+4

这是AdBlock的一个问题。我禁用了它,现在它正常加载它。 – Nahuel 2012-03-15 23:21:28

6

它也可能是您的主机文件,这里是我的:

$ grep -ni "google-analytics.com" /etc/hosts 
6203:# 127.0.0.1 ssl.google-analytics.com #[disabled = Firefox issues] 
6204:127.0.0.1 www.google-analytics.com #[Google Analytics] 
+0

就是这样。不知道它是如何在那里开始的,但删除它的工作。 – 2014-10-14 16:16:27

3

你正在运行到问题的原因是因为的AdBlock将阻止该脚本当且仅当它不经过https。注意你得到的错误包含一个http:协议参考。

您只需更改片段即可强制其通过ssl连接,方法是添加显式协议而不是缺省的协议相对url。

<script> 
    (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 
    (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 
    m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 
    })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); 

    ga('create', 'UA-XXXXX-XX', 'auto'); 
    ga('send', 'pageview'); 
</script> 
+0

这实际上是一个很好的提示,可以避免使用AdBlock的用户失去统计数据。既然已经有了一个被接受的答案,我会给你添加小费。谢谢! – Nahuel 2016-01-15 00:24:41

+3

https完全没有区别。主机被阻止,而不是URL。 – 2016-02-14 00:34:23

+1

确实肯,不幸的是,即使我改变了http为https我仍然可以在浏览器的调试控制台中看到这个: GET https://www.google-analytics.com/analytics.js net :: ERR_BLOCKED_BY_CLIENT – 2016-03-10 20:56:24

相关问题