用户追踪之基础技术——Cookie

安全 应用安全
Cookie是如此的重要,以至于我们后面要讲到的回头客定向、访客频次定向、用户定向等等都需要基于此技术才可以实现,并且我们日常工作中所能见到的第三方监测工具如doubleclick、99click、秒针等也都要利用cookie技术,网站分析工具如GA、百度统计、CNZZ等也需要利用cookie。

前言

Cookie是如此的重要,以至于我们后面要讲到的回头客定向、访客频次定向、用户定向等等都需要基于此技术才可以实现,并且我们日常工作中所能见到的第三方监测工具如doubleclick、99click、秒针等也都要利用cookie技术,网站分析工具如GA、百度统计、CNZZ等也需要利用cookie。如果没有Cookie,互联网广告市场将受到巨大打击,尤其对于目前我们谈论的精准广告而言。如果没有Cookie,网站分析也无从做起。遑论优化了。 

Cookie是什么

Cookie在英文中是小甜品的意思,但在计算机语言中,Cookie指的是当你浏览某网站时,网站存储在你电脑上的一个小文本文件,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。它记录了你的用户ID,密码、浏览过的网页、停留的时间等信息,用于用户身份的辨别。Cookie通常是以user@domain格式命名的,user是你的本地用户名,domain是所访问的网站的域名。

为什么要Cookie

因为HTTP协议是无状态的,对于一个浏览器发出的请求,服务器无法区分是不是同一个来源,无法知道上一次用户做了什么。所以,需要额外的数据用于维护会话。 Cookie 正是这样的一段随HTTP请求一起被传递的额外数据,用于维护浏览器和服务器的会话。我们可以想象一个场景,你没有登录京东时在京东上购物,选择了3件商品放入购物车,在结算时,京东为什么还能知道这三件商品是什么?没错,是Cookie!

Cookie的工作原理

Cookie利用网页代码中的HTTP头信息,伴随着用户请求和页面在 Web 服务器和浏览器之间传递。例如:当你在浏览器地址栏中键入了Amazon的URL,浏览器会向Amazon发送一个读取网页的请求,并将结果在显示器上显示。在发送之前,该网页在你的电脑上寻找Amazon网站设置的Cookie文件,如果找到,浏览器会把Cookie文件中的数据连同前面输入的URL一同发送到Amazon服务器。服务器收到Cookie数据,就会在他的数据库中检索你的ID,你的购物记录、个人喜好等信息,并记录下新的内容,增加到数据库和Cookie文件中去。如果没有检测到Cookie或者你的Cookie信息与数据库中的信息不符合,则说明你是***次浏览该网站,服务器的CGI程序将为你创建新的ID信息,并保存到数据库中。(此例子来源于百度百科——Cookie)

关于Cookie的一些知识点

1、Cookie是基于浏览器的,因此当电脑上安装多个浏览器时,服务器会生成多个Cookie。虽然是同一个人,但服务器是识别为多个用户。

2、Cookie是基于浏览器的,因此当同一台电脑有多个人使用时,服务器也只会生成一个Cookie。虽然是多个人,但服务器会认为是一个用户。

3、Cookie是无法跨设备进行设置的。比如我们在单位和家里分别使用两台电脑,即使我们使用同一种同一版本的浏览器,我们还是生成了两个Cookie,服务器会认为是两个用户。(PS:现在有些浏览器可以同步数据,比如Chrome、Friefox,可以避免这种问题)

请注意:以上所说的Cooke指的全部是Http Cookie。有一种Cookie——Flash Cookie,可以解决多浏览器的问题。

关于Flash Cookie

FlashCookie是由FlashPlayer控制的客户端共享存储技术,鉴于目前Flash技术的普遍性,几乎所有的网站都采用,所以具有同Http Cookie一样的作用。在技术上,通过使用JavaScript与ActionScript可以将Http Cookie和Flash Cookie进行互通。

Flash cookie的优势在于:

1、跨浏览器

不管用户的计算机上安装了多少个浏览器或者浏览器的不同版本,使用Flash Cookie能够使所有的浏览器共用一个Cookie。

2、不易删除

所有的浏览器均提供了清除Http Cookie的快捷方式,但Flash Cookie并没有此种方式,并且其保存位置非常隐蔽,网民难以删除。

3、容量更大

Flash Cookie可以容纳最多100千字节的数据,而一个标准的HTTP Cookie只有4千字节。

作为网络广告行业的销售人员,了解以上知识就已经绰绰有余了。如果想了解更多,可以接着往下看。

Cookie的数量

1、大多数浏览器支持***为 4096 字节的 Cookie。因此***用 Cookie 来存储用户 ID 之类的标识符,用户的详细信息则通过用户 ID从数据库或其他数据源中读取。
 

2、浏览器还限制站点可以在用户计算机上存储的 Cookie 的数量。大多数浏览器只允许每个站点存储 20 个 Cookie;当存储更多 Cookie时,最旧的 Cookie 便会被丢弃。有些浏览器还会对它们将接受的来自所有站点的 Cookie 总数作出绝对限制,通常为 300 个。

Cookie的失效时间

1、浏览器的Cookie设置会决定是否保存Cookie数据。如果浏览器不允许Cookie保存,则关掉浏览器后,这些数据就消失。

2、如果浏览器允许保存Cookie,那么Cookie的时间由服务器的设置决定。Cookie有一个Expires(有效期)属性,这个属性决定了Cookie的保存时间,服务器可以通过设定Expires字段的数值,来改变Cookie的保存时间。如果不设置该属性,那么Cookie只在浏览网页期间有效,关闭浏览器,这些Cookie自动消失,绝大多数网站属于这种情况。通常情况下,Cookie包含Server、Expires、Name、value这几个字段,其中对服务器有用的只是Name和value字段,Expires等字段的内容仅仅是为了告诉浏览器如何处理这些Cookies。

Cookie的样例

1、Cookie的名称

用户追踪之基础技术——Cookie

2、Cookie的内容

用户追踪之基础技术——Cookie

3、从页面代码监测工具看Cookie

用户追踪之基础技术——Cookie

Cookie的位置

1、Http Cookie的位置

Windows 9X系统 C:WindowsCookies

Windows NT/2000/XP系统 C:Documents and Settings用户名Cookies

win7系统 ?C:Users*AppDataRoamingMicrosoftWindowsCookies*

OS X系统 ~/Users/用户名/Library/Cookies

2、Flash Cookie的位置

非Win7系统

C:Documents and Settings[username你的用户名]Application DataMacromediaFlash Player#SharedObjects

Win7

C:Users[username你的用户名]Application DataMacromediaFlash Player

其中:Users可能显示为“用户”

OS X系统

~/Users/用户名/Library/Preferences/Macromedia/Flash Player/#SharedObjects

~/Users/用户名/Library/Preferences/Macromedia/Flash Player/macromedia.com/support/flashplayer/sys/

***方Cookie和第三方Cookie

大多数的第三方监测工具和网站分析工具都会采用第三方Cookie。所谓***方和第三方的说法,是用来确定Cookie的归属的,这个归属是指Cookie中记录的域(domain)。***方和第三方的唯一区别只是:Cookie中的域名是否和被访问网站的域一样,是就是***方,否就是第三方。举个例子:如果你访问网站www.chinawebanalytics.cn的时候,网站在你的电脑上设置了一个Cookie,里面的记录的域名也是www.chinawebanalytics.cn,那么这个Cookie就是***方的,归你访问的网站www.chinawebanalytics.cn所有。而如果你访问网站www.chinawebanalytics.cn时,在你的计算机中设置的Cookie的域名是www.abc.com,那么这个Cookie就是第三方Cookie,归www.abc.com所有。

所以,***方Cookie并不一定需要由某个网站自己的服务器给自己建立,别的网站也能为它建立;而且,***方Cookie也不一定是能由某个网站自己读取的,它完全可能由第三方读取。

责任编辑:蓝雨泪 来源: www.iamniu.com
相关推荐

2021-03-11 09:40:23

Firefox 86漏洞Cookie

2014-07-30 10:24:25

2014-07-30 09:41:38

2015-01-15 09:59:53

浏览器安全Cookie安全漏洞

2009-07-24 17:04:57

ASP.NET中Coo

2010-09-30 10:03:53

2019-01-04 15:14:18

2021-07-13 07:22:24

框架DjangoSession

2010-09-30 10:16:48

2013-08-21 09:21:01

2015-11-23 15:24:02

隐私窃取

2013-08-21 10:08:16

2017-03-01 15:18:16

2024-04-15 11:24:32

库存跟踪技术NFC蓝牙

2010-05-10 14:20:24

负载均衡技术

2016-12-08 09:57:09

LinuxDTrace技术

2021-07-30 10:38:40

Linux工具系统

2021-11-15 04:00:07

Linux 内核动态

2021-11-14 07:29:55

Linux 内核静态追踪Linux 系统

2010-09-30 09:42:06

点赞
收藏

51CTO技术栈公众号