Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cookies Cookie被Google Analytics-Coldfusion覆盖_Cookies_Coldfusion_Google Analytics_Overwrite - Fatal编程技术网

Cookies Cookie被Google Analytics-Coldfusion覆盖

Cookies Cookie被Google Analytics-Coldfusion覆盖,cookies,coldfusion,google-analytics,overwrite,Cookies,Coldfusion,Google Analytics,Overwrite,我们有一个用户自助门户,在那里我们使用GA跟踪站点。我们的门户有一个外部站点,它也使用GA跟踪其使用情况。(两者都使用相同的GA帐户) 他们有一个登录提示,可以将用户重定向到我们的站点 他们在登录提示中使用的是一个简单的表单,称我们的门户为“登录管理器”URL 我们的登录管理器是一个Coldfusion组件,它启动会话并将Coldfusion的默认CFID和CFTOKEN值写入浏览器cookie 他们现在声称Coldfusion登录管理器不允许外部站点设置的GA cookie留在浏览器中。相反,

我们有一个用户自助门户,在那里我们使用GA跟踪站点。我们的门户有一个外部站点,它也使用GA跟踪其使用情况。(两者都使用相同的GA帐户)

他们有一个登录提示,可以将用户重定向到我们的站点

他们在登录提示中使用的是一个简单的表单,称我们的门户为“登录管理器”URL

我们的登录管理器是一个Coldfusion组件,它启动会话并将Coldfusion的默认CFID和CFTOKEN值写入浏览器cookie

他们现在声称Coldfusion登录管理器不允许外部站点设置的GA cookie留在浏览器中。相反,它覆盖了它们。因此,一旦用户成功登录,外部站点设置的GA cookie将消失,只有我们的站点cookie可用。它以推荐(utmccn=(推荐)| utmcmd=推荐)和全新访客的形式出现。因此他们无法跟踪外部站点的使用情况

我这里的问题没有解决。他们在问为什么它会阻止传递现有的变量

登录管理器正在覆盖所有现有cookie,需要允许继续使用现有的Google Analytics cookie

这是我能从Coldfusion end做的吗

任何建议都会很有帮助

我们网站中的GA代码-帐户和域名已更改

var _gaq=_gaq | |[];
_gaq推送([''u设置帐户','UA-XXXXXX-1']);
_gaq.push([''u setDomainName','.example.com']);
_gaq.push([''设置Allowlinker',true]);
_gaq.push([u setallowash',false]);
_gaq.push([''u trackPageview']);
(功能(){
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);
})();

需要在两个站点(他们的站点和CF站点)上启用跨域跟踪

Cookie不会被覆盖,它们将保留在浏览器中。他们的域和CF域都有一个GA cookie集。GA不能也不会设置第三方Cookie,也不能读取其他域设置的Cookie,即使它们是GA Cookie

看起来好像它们被覆盖是因为它们具有相同的名称,而不是因为它们具有不同的域。一个域无法读取或覆盖另一个域的cookie


请参阅以设置跨域跟踪。

如果看不到ColdFusion代码,就无法知道您在登录脚本中所做的操作是否导致了错误,或者是否是跨域工作的cookies问题。@DanShort没有错误。这就是GA曲奇的工作原理。它们是为每个域设置的第一方cookie。他们没有看到被覆盖的cookie。他们看到了特定领域的GA cookies。
<script type="text/javascript">

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXX-1']);
  _gaq.push(['_setDomainName', '.example.com']);
  _gaq.push(['_setAllowLinker', true]);
  _gaq.push(['_setAllowHash', false]);
  _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);
  })();