http://blog.chinaunix.net/uid-28387257-id-3775638.html

一、引言

最近发现了一件有趣的事:在淘宝搜索相关产品后,到糗事百科或者其他外站浏览资讯时,有很多精准的橱窗推荐,比如我搜索了某本书、洗衣机,橱窗推荐会给出相关书籍、相关价位的洗衣机。无独有偶,亚马逊也在外站有类似的橱窗推荐。这种现象耐人寻味。
思索良久,找人讨论了下。得出这些网站是利用第三方cookie和浏览器dnt追踪用户隐私,从而实现精准推送的。先从头讲起,初学者(包括我在内)对HTTP协议不熟悉,误以为跟踪用户这种行为是通过sessionID实现的,这种想法有一定道理,但实际上不这样做。不过,有想法总是好的,说不定以后会有机会采用session存储的方式,通过IP+PORT来判断用户,也未可知。
那么,为什么不采用服务端存储sessionID的方式呢?答案很简单:成本高。sessionID放在服务端,为了提高用户访问命中率,通常会使用缓存,也就是内存,假设一个session信息2KB,上千万用户的session信息储存成本就很可观了。相反,使用客户端cookie存储信息的方法,虽然需要反复传递,但是耗费的只是流量,流量的成本是很低的,通常1GB也要不了几块钱。cookie里面也有sessionID,用户初次访问网站的时候,会分配唯一的sessionID,这个ID返回客户端,交给cookie存储【引 1】。用户下次访问服务器的时候,会携带这个cookie,里面存储有这个ID。

二、cookie追踪原理

引文到这里,来讲讲cookie如何跨站追踪用户行为。访问一个网站first.com,会生成这个网站相关的cookie,并且只有这个网站可以访问生成的cookie。例如访问淘宝,会生成淘宝相应的cookie,cookie可能有多个,如图1.


图1 淘宝第一方cookie

注意cna这个cookie名称,后面会用到。现在来看访问糗事百科的情况,见图2.


图2 糗事百科-淘宝第三方cookie

糗事百科有关于多个域名的cookie,使用了cookie-cna的域名有两个:cdn.tanx.com strip.taobaocdn.com。CDN是内容分发网络,这两个域名显然都是关于淘宝的。那么,同样的cookie名cna到了这里,为什么叫第三方了呢?这其实是相对而言的。对于糗事百科而言,taobaocdn属于外站,生成的cookie只有淘宝相关的域名才能访问,糗事百科本身的域名访问不了,所以叫做第三方【引 2】。有人说第三方cookie只有一个,不理解什么意思【注 1】。下面来讲讲这个第三方cookie的强大作用。
第三方cookie可用于跨站追踪用户行为,比如从糗事百科访问淘宝这样的行为通过第一方cookie是记录不了的,因为第一方cookie各不关联,而第三方cookie能记录用户访问和点击的动作【引 2】。这对于网站数据分析至关重要,比如,这些数据可以直接反应广告投放的精准度。

三、浏览器dnt

前段时间,360推出了浏览器反追踪功能,从而让cookie追踪这种行为的讨论甚嚣尘上【引 6】。dnt的全称是do not track。这种协定早在5年前就已经提出。360推出这种功能很大程度上是为了吸引眼球。从本质上来说,dnt只是一种君子协定,浏览器只发送了dnt信息,但服务端遵守与否是另一回事【引 7】。
实际上,cookie技术虽然备受诟病,但却不可或缺,因为购物车这种功能就是cookie的典型应用,如果完全禁用cookie,那么,用户会有极大的不便。想在外站完全禁止广告投放也没有实现的可能性,这对于许多网站来说是赚钱的命脉所在。那么,能不能在外站禁止第三方cookie呢?第三方cookie和第一方cookie本质来说是一样的,不过这仍然是个值得讨论的问题,下次有机会再谈。

引用:
【1】 http://www.jz123.cn/text/196.html sessionID和cookie。
【2】http://linux.cn/thread/4124/1/1/ 第一方cookie vs 第三方
【3】 http://www.szwebanalytics.com/first-three-party-cookie.html 第一方cookie和第三方
【4】http://www.biaodianfu.com/first-party-cookie-and-third-party-cookie.html 同上
【5】 http://help.iteye.com/blog/1587074 同上 
【6】 http://net.chinabyte.com/288/12551788.shtml 360退出dnt
【7】 http://www.cr173.com/html/18326_1.html 浏览器禁止追踪
【8】 http://www.oschina.net/news/35175/do-not-track 同上

注解:
【1】这里的“只有一个”,原句见引用【2】,意思可能是说,多个外站都引导的淘宝的cookie都使用一个,比如cna这个cookie。

关于淘宝橱窗推荐--用户行为追踪--http协议深入相关推荐

  1. 2014年淘宝双十二期间用户行为分析

    2014年淘宝双十二期间用户行为分析 用户行为分析的数据是淘宝某店铺11月18日至12月18日之间的用户行为数据,主要使用MYSQL进行分析. 数据中一共有五个字段,分别是用户id,商品id,用户行为 ...

  2. 类淘宝橱窗web应用设计问题

    需求: 1 设计实现类淘宝橱窗web应用并涵盖流量控制系统. 2 展示支持日均pv 3亿 高峰9亿. 3 对每个广告位(橱窗),策略(展现规则)进行流量控制,按策略进行流量分配. 4 橱窗内容接口对接 ...

  3. 伯乐发卡系统高级版源码 高仿淘宝模板 带用户中心

    介绍: 内置高仿淘宝模板,带用户中心  分销代理等等 推荐使用宝塔面板安装,设置运行目录为public,测试环境为php7.0 mysql5.5 伪静态选择为thinkphp 授权已经去了,后台是/h ...

  4. 淘宝如何实现用户与订单的绑定

    今天一位业内的朋友,在做APP,咨询了一个问题: 淘宝推荐商品的APP,如何实现用户与订单的绑定,比如后台订单看到某商品卖了10件,那这10件商品是谁买的? 我给了两个解决方案: 第一,实现用户与PI ...

  5. 足迹推荐位,淘宝足迹推荐位,旺旺打标足迹显示问题,详情页足迹推荐,淘宝详情页的下拉出现足迹,v兔电商

    淘宝的千人千面算法已经连带足迹推荐都开始个性化了.淘宝详情页的下拉出现足迹实现方法. 一.首先了解一下什么是足迹推荐位: 在最新版本手淘版本9.00.0之后的版本,点击到任意到任意的商品详情页中下拉会 ...

  6. 美团、微信、淘宝“频繁定位”用户?iOS15升级后,App集体“沦陷”

    伴随着<数字安全法>的生效,<个人信息安全法>也将于11月1日正式施行,关于用户信息安全与互联网平台的信息获取边界依然存在讨论空间. 10月10日,有数码博主爆料称,在升级苹果 ...

  7. Javascript小案例(一):仿淘宝搜索框用户输入事件的实现

    淘宝是我们经常用的一个网上购物平台,打开淘宝网首页,找到淘宝首页的搜索框,如下如所示: (截图日期:2017年6月18日) 大家可以看到,当页面一打开,搜索框中就可以看到灰色字体"少女高跟鞋 ...

  8. 淘宝关键词推荐技术介绍

    2013-08-19 阿里技术嘉年华 文/太紫 [导读]本文通过行业对比等角度分析了关键词推荐技术及工具,关键词推荐系统帮助广告主扩展选词思路,挖掘有价值的关键词,从而更好地提升产品的曝光,帮助广告主 ...

  9. 淘宝足迹推荐位是什么

    什么是足迹推荐位: 在最新版本手淘版本9.00.0之后的版本,点击到任意到任意的商品详情页中下拉会出现足迹推荐位, 一般足迹推荐位有4个.10个.20个等等, 1.点击任意商品详情 2.下拉页面 3. ...

最新文章

  1. static String valueOf(XXX xxx)
  2. JAVA IO操作中的IN和OUT问题
  3. Chrome 内存和CPU消耗量双料冠军
  4. 常用的做网站软件、网站制作软件分享
  5. linux 配置软件安装源
  6. 华为OD岗位面试流程及总结
  7. 美国梅西学院计算机科学与技术,新西兰梅西大学计算机科学硕士专业很难吗?看完入学条件就知道了...
  8. 【数据分析与可视化】Python的input和output
  9. 使用GO实现尚硅谷家庭记账系统
  10. 沉稳:天塌地陷,岿然不动;日月星辰,唯吾独尊
  11. vue多页面多路由开发环境
  12. 手机无法被计算机识别,手机usb无法被电脑识别怎么办_电脑无法识别手机usb设备的解决方法...
  13. 2022-01-27 使用liquibase管理mysql执行版本
  14. 中国版权力的游戏构思
  15. 5000人小程序 服务器,微信公开课憋了哪些大招?放开5000好友限制,小程序超8000亿规模...
  16. 为什么非全站升级HTTPS不可? 1
  17. [Pandas] 相同分组条件下的特定列除第一行以外的值为空
  18. 贝叶斯分类器的MapReduce实现(VMware + Hadoop)
  19. node.js 沙盒逃逸分析
  20. 文本编辑程序(第四章 P85)

热门文章

  1. 重置电脑与重装系统到底有什么区别?只需一分钟给你答案!
  2. shorten command line导致的bug
  3. 四川大学网络教育计算机考试题,四川大学网络教育入学考试大学英语试题
  4. python飞机_Python 飞机航班案例分析
  5. 【HDOJ】2851 Lode Runner
  6. 细思极恐,你真的会写java吗
  7. Java项目:JSP员工出差请假考勤管理系统
  8. 机器人迷城手机版_机械迷城手机版
  9. FG96-2CH搭载NVIDIA 官方OrinNX套件移植GMSL相机
  10. VSTAR教程(一)连接观测信号到VSTAR IP