我已经看到了:你能在 localhost 地址上测试谷歌分析吗?并让谷歌分析按照建议的方式查看测试服务器,但没有任何效果。
我做了什么:
- 编辑了我的主机文件以具有几个额外的域。
- 在我的本地 Apache httpd 服务器上创建虚拟主机。
- 在 Google Analytics 中创建了一个帐户,在该帐户中创建了几个“属性”(如在属于我的网站中)。
- 编写了一个测试 HTML 页面,该页面将向 Google Analytic 服务报告页面视图。
所有列表如下所示:
c:/Windows/System32/drivers/etc/hosts
127.0.0.1 ad-test # for testing ad banners
127.0.0.1 testing.foo.tv # for testing ad banners
127.0.0.1 testing.foo-sdk.tv # for testing ad banners
相关部分httpd.conf
<VirtualHost *:80>
ServerName ad-test
DocumentRoot D:/cygwin/home/wvxvw/projects/AdModule
<Directory "D:/cygwin/home/wvxvw/projects/AdModule">
AllowOverride All
Order Allow,Deny
Allow from all
Require all granted
</Directory>
</VirtualHost>
(对于所有其他主机看起来都一样)
该AdModule
目录有以下index.html
文件:
<html><head></head><body>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXXXX-3']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script></body></html>
(还有一个使用较新 API 的变体,但为了简短起见,我没有发布它)
上述 HTML 页面中的document.domain
属性设置为我在 Google Analytics(分析)帐户设置中指定的域。
当我查看发送到 Google Analytics 服务的请求时,我可以看到 JavaScript 正在加载,然后是 gif 图像。我可以在没有错误的情况下调用其他 API 函数,但仪表板中没有显示任何内容。
更新
两天后我回到了我的电脑上,这是我在谷歌分析页面上找到的:
问题解决了...