以下是我遇到的问题:
目前,我们需要跟踪www.chess.com和secure.chess.com。 但是,我无法将域设置为.chess.com,因为cookie会导致另一个域live.chess.com出现问题。
所以,要解决这个问题,在代码中 - 我会这样做:
<? if (HTTPS) { ?>
<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-01']);
_gaq.push(['_setDomainName', 'secure.chess.com']);
_gaq.push(['_trackPageview']);
</script>
<? } else { ?>
<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-02']);
_gaq.push(['_setDomainName', 'www.chess.com']);
_gaq.push(['_trackPageview']);
</script>
<? } ?>
但是,这迫使我们维护2个分析帐户(UA-XXXXX-01和UA-XXXXX-02),并在HTTPS和HTTP流量之间创建分离。
如何设置此功能,以便ONE分析帐户无需设置顶级Cookie(.chess.com)即可跟踪secure.chess.com和www.chess.com?
答案 0 :(得分:-1)
从this answer复制:
<? if ( %%HTTP_HOST%% != 'live.chess.com' ) { ?>
<script>
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-XXXXX-01']);
_gaq.push(['_setDomainName', '<? echo %%HTTP_HOST%% ?>']);
_gaq.push(['_trackPageview']);
</script>
<? } ?>
(其中%%HTTP_HOST%%
是服务器端脚本生成的变量)
编辑:要确认,在secure.chess.com和www.chess.com上生成的所有网页上都包含以下代码,而在secure.chess.com上显示的脚本错误是否正确?< / p>
<script type="text/javascript">
(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>