例如有三个域名
Domain1:stg.A.com
Domain2:stg.B.com
SDC服务器域名: sdc.A.com
脚本文件都统一引用同一个stg.A.com/sdc.js
Cookie说明:
Webtrends跟踪访客会用到两个相关的cookie
1. WEBTRENDS_ID, sdc.A.com域名,用于识别访客
2.WT-FPC,页面所在域名,用于记录是否新访客,初始访问时间、上次访问时间、本次访问时间等等。
新访客首先访问stg.A.com时
第一次访问时,检测到本地没有WT-FPC的cookie,就通过请求sdc.A.com/dcsid/wtid.js
生成跟踪字符串,然后把这个跟踪字符串写到WT-FPC的cookie里。
然后sdc.js脚本采集相关数据,并发送到sdc.A.com/dcsid/dcs.gif。
第一次发送这个dcs.gif到服务器时,是没有没携带WEBTRENDS_ID的跟踪cookie的,所以SDC服务器在Response 里把WEBTRENDS_ID的cookie投递到本机,域名属于sdc.A.com,然后redirect这个dcs.gif请求一次,就可以在日志里记录到跟踪cookie了。
先后请求有4个
访问后cookie投递如下
访客再次访问stg.B.com时
先整理下这时电脑有哪些cookie:
1. WEBTRENDS_ID, 属于sdc.A.com域名的cookie,一直都在;
2.WT-FPC,属于stg.A.com域名的cookie,记录的webtrends_id,访问时间等。
访客访问stg.B.com的页面时,脚本检查到是没有属于当前域名的WT-FPC的cookie的,于是通过请求sdc.A.com/dcsid/wtid.js
生成跟踪字符串,然后把这个跟踪字符串写到WT-FPC的cookie里。
然后sdc.js脚本采集相关数据,并发送到sdc.A.com/dcsid/dcs.gif。
这次浏览器已经带有WEBTRENDS_ID的cookie里,在dcs.gif的请求里一并发送的sdc.A.com的服务器,于是可以识别成同一个人。
先后请求3个
Cookie如下:
大家可能有以下问题:
1. 第一次请求wtid.js和第二次请求wtid.js有什么区别?
第一次请求wtid.js时,浏览器还没有WEBTRENDS_ID的cookie,所以只是根据pc的ip生成一个跟踪字符串,目的是通过js定义一个gTempWtId的变量。
然后sdc.js脚本可以把这个变量读出,写到WT-FPC的cookie里,同时在dcs.gif的请求里增加参数WT.co_f(9版是WT.vtid),所以webtrends配置里可以根据cookie跟踪,也可以根据url参数WT.co_f跟踪。
第一次访问时有一下参数用于识别是第一次
WT.vt_f=1, 说明是历史上第一次访问本网站。
第二次请求wtid.js时,浏览器已经带有WEBTRENDS_ID的cookie,只是因为访客访问的页面跨域了,所以才找不到WT-FPC的cookie,所以wtid.js返回是这样的
在返回相同的跟踪字符串给页面外,还额外定义gWtAccountRollup=1; 说明访客已经访问过网站下的其他域名。
然后sdc.js脚本可以把这个变量读出,写到WT-FPC的cookie里,同时在dcs.gif的请求里增加参数WT.co_f(9版是WT.vtid),所以webtrends配置里可以根据cookie跟踪,也可以根据url参数WT.co_f跟踪。
这时没有参数WT.vt_f=1,但有参数WT.vt_f_a=1,用于识别整站来说不是新访客,但对于这个域名是新访客。