搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
知新_RL
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
2024美赛思路 A-F题大概思路(抛砖引玉)_预测比赛流程波动
2
OpenAI Sora 怎么用:最新详细教程-新手小白必看
3
AnimatorStateInfo
4
AIGC:ChatGPT(一个里程碑式的对话聊天机器人)的简介(意义/功能/核心技术等)、使用方法(七类任务)、案例应用(提问基础性/事实性/逻辑性/创造性/开放性的问题以及编程相关)之详细攻略_chatgpt新模型 sora使用
5
Lag-Llama:基于 LlaMa 的单变量时序预测基础模型
6
threeJS 模型中加载html页面_three.js添加dom
7
数字滤波器的MATLAB和FPGA实现-读书笔记 (1/3)_fpga matlab
8
异步http和同步http原理和差异
9
VMware安装&虚拟机安装_vmvxq
10
消息队列RabbitMQ-使用过程中面临的问题与解决思路
当前位置:
article
> 正文
关于淘宝橱窗推荐-->用户行为追踪--http协议深入_cookie中cna
作者:知新_RL | 2024-03-02 00:31:28
赞
踩
cookie中cna
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。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/知新_RL/article/detail/177841
推荐阅读
article
Nginx
http
.
server
.
location
配置项说明...
在配置时,请确保了解每个参数的作用,并在生产环境中进行充分的测试。: 定义默认索引文件的名称,当请求的是一个目录而不是一...
赞
踩
article
Spring
注解之处理常见
的
HTTP
请求
...
5 种常见
的
请求
类型:GET :
请求
从服务器获取特定资源。举个例子:GET /users(获取所有学生)POST :在服...
赞
踩
article
http
状态
码...
http
状态
码合集
http
状态
码 1.
状态
码的含义 当浏览者访问一个网页时,...
赞
踩
article
Http
Keep
-Alive和Tcp
keep
alive
介绍_
tcp
http
keep
aliv...
keep
alive
/
http
keep
alive
和
tcp
keep
alive
一级目录二级目录三级目录一级目录二级目录三级...
赞
踩
article
TCP
Keep
alive
和
HTTP
Keep
-
Alive
是一个东西吗?_tcp的
keep
al...
大家好,我是小林。之前有读者问了我这么个问题:大致问题是,TCP 的
Keep
alive
和
HTTP
的
Keep
-A...
赞
踩
article
详解TCP、
HTTP
中的保活机制 |
Keep
alive和
Keep
-
Alive
_
keepalive
。...
TCP 的
Keep
alive 和
HTTP
的
Keep
-
Alive
是一个东西吗?这是个好问题,应该有不少人都会搞混...
赞
踩
article
HTTP
---------
状态
码...
而 302 Found 最初设计时也要求客户端保持相同的请求方法,但在实际使用中,许多客户端(如浏览器)会将后续的重定向...
赞
踩
article
获取
cookie
s的方法及
使用
postman
进行
接口关联_
postman
cookie
...
这样,在填写收货地址和支付订单的请求中,就可以根据前面的请求中
获取
到的商品信息来
进行
相应的操作,而不需要手动输入商品信息...
赞
踩
article
HTTP
错误
401.3
-
Unauthorized
由于
Web
服务器
上此
资源
的
访问控制
列表
...
原因分析:IIS匿名用户一般属于Guests组,而我们一般把存放网站
的
硬盘
的
权限只分配给administrators组,...
赞
踩
article
基于
http
+公网
ip
的Frp内网穿透教程(
win
server
)_
frp
http
...
本文主要介绍公网
ip
的
frp
内网穿透配置教程。写本文主要是做一个记录,以便以后需要再次配置内网穿透时有所参考。如对您有所...
赞
踩
article
若依框架最后一步运行启动失败(已解决)_2023-
1
2-
06
1
6
:
29
:
58.2
1
9 [
http
-...
尝试在master中的username和password加上双引号。_2023-
1
2-
06
1
6
:
29
:
58.2
1
9 [...
赞
踩
article
git
报错:
unable
to
access
“
http
://
git
lab.tydic.
com
:7...
问题出现的原因可能有两个:网络有问题才报的这个错误如果不是网络的问题,你试下下面的方法:注意写
git
hub.
com
或...
赞
踩
article
HTTP
AT
命令集_
at
+
httpclient
...
默认的
AT
固件支持此页面下的所有
AT
命令。如果您不需要 ESP32 支持
HTTP
命令,请自行。_
at
+htt...
赞
踩
article
字节青训前端笔记 |
Node
框架(
express
和
koa
)_
koa
cookie
-parse...
书接上文,现在常用的后端框架是
express
和
koa
,这里分别给出简单的例子。_
koa
cookie
-
parser
...
赞
踩
article
Kubernetes
外部
HTTP
请求
到达 Pod
容器
的全过程...
如第二节图所示,全过程大致为:用户从 web/mobile/pc 等客户端发出
HTTP
/
HTTP
S
请求
。由于应用服务...
赞
踩
article
解决
nginx
...
server
:
local
host
,
request
:
“GET /index...
解决
nginx
...
server
:
local
host
,
request
:
"GET /index HTTP/1.1"...
赞
踩
article
浏览器
拦截
跨
域
请求
处理方法(已阻止
跨
源
请求
:
同源策略禁止读取远程
资源
) 原文地址:
http
:
//m...
浏览器
拦截
跨
域
请求
处理方法(已阻止
跨
源
请求
:
同源策略禁止读取远程
资源
)原文地址:
http
:
//my.
oschina
.ne...
赞
踩
article
HTTP
503
错误
是
什么
,
HTTP
503
错误
的原因和
解决
方法...
这种情况可能
是
由于许多同时发生的请求、不充分的服务器资源或不良的脚本编码所致。
解决
此问题的最佳方法
是
增加服务器资源或减少...
赞
踩
article
Redhat7.6
HTTP
搭建网络
yum
源_
redhat
set
network
http
rep...
企业搭建私有
http
yum
源,轻松几招搞定_
redhat
set
network
http
repo
redhat
se...
赞
踩
article
指定
Django
工程的IP和端口后项目运行没有出问题,但是无法访问端口且报错:
Invalid
HTT...
cmd中报错内容为:D
:
\resp_work\py_1707A\days02\mysite>python manage....
赞
踩
相关标签
nginx
http
运维
服务器
网络协议
网络
tcpip
gateway
tomcat
netty
linux
tcp/ip
Keep-Alive
Keepalive
postman
测试工具
前端