客户识别及其极为重要的原因
正如您最清楚地知道的那样,每个网站,或者至少那些关心您和您的行为的网站,都包含某种形式的内容个性化。
那是什么意思?
好吧,如果您访问电子商务网站,或者包括社交网络上的“您可能知道/想要联系的人”,推荐视频,几乎诡异地了解您需要的广告,以及与之相关的新闻文章你,等等。
这种效果感觉就像一把双刃剑。一方面,它提供了个性化的自定义内容,非常漂亮。另一方面,它可能导致确认偏见,可能导致各种刻板印象和偏见。有一个优秀的迪尔伯特漫画,涉及确认偏见。
然而,我们如何能够在不知道我们最喜欢的球队昨晚得分如何,或者昨晚名人做了什么的情况下生活?
无论哪种方式,内容个性化已成为我们日常生活的一部分,我们可能不会,我们可能甚至不想,对此采取任何行动。
让我们看看Web服务器如何识别您以实现此效果。
识别客户的不同方法
Web服务器可以通过多种方式识别您:
- HTTP请求标头
- IP地址
- URL
- Cookies
- 登录信息(认证)
用于标识的HTTP请求标头
Web服务器有几种方法可以直接从HTTP请求标头中提取有关您的信息。
那些标头是:
- From – 包含用户的电子邮件地址(如果提供)。
- User-Agent – 包含有关Web客户端的信息。
- Referer – 包含用户来自的来源。
- Authorization – 包含用户名和密码。
- Client-ip – 包含用户的IP地址。
- X-Forwarded-For –包含用户的IP地址(通过代理服务器时)。
- Cookie – 包含服务器生成的ID标签。
从理论上讲,From非常适合唯一标识用户,但实际上,由于电子邮件收集的安全问题,很少使用此标头。
User-Agent包含诸如浏览器的版本或操作系统的信息。虽然这对于自定义内容很重要,但它并不以更相关的方式识别用户。
该Referer告诉该用户是来自服务器。此信息用于提高对用户行为的理解,但不太适合识别用户行为。
虽然这些标头提供了有关客户端的一些有用信息,但仅以有意义的方式个性化内容是不够的。
其余标题提供更精确的识别机制。
IP地址
当IP地址不那么容易伪造/交换时,IP地址的客户端识别方法在过去被更多地使用。虽然它可以用作额外的安全检查,但它不够可靠,不能单独使用。
以下是一些原因:
- 它描述了机器,而不是用户。
- NAT防火墙 -许多ISP(Internet服务提供商)使用NAT防火墙来增强安全性并处理IP地址短缺
- 动态IP地址 -用户经常从ISP获取动态IP地址
- HTTP 代理和网关 -这些可以隐藏原始IP地址。某些代理使用Client-ip或X-Forwarded-For来保留原始IP地址
URL
看到网站利用URL来改善用户体验并不罕见。当用户浏览网站时,他们会添加更多信息,直到网址看起来复杂且难以辨认。
您可以通过浏览Amazon商店查看长URL的外观。
https://www.amazon.com/gp/product/1942788002/ref=s9u_psimh_gw_i2?ie=UTF8&fpl=fresh&pd_rd_i=1942788002&pd_rd_r=70BRSEN2K19345MWASF0&pd_rd_w=KpLza&pd_rd_wg=gTIeL&pf_rd_m=ATVPDKIKX0DER&pf_rd_s=&pf_rd_r=RWRKQXA6PBHQG52JTRW2&pf_rd_t=36701&pf_rd_p=1cf9d009-399c-49e1-901a- 7b8786e59436&pf_rd_i =桌面
使用这种方法时有几个问题。
- 它很丑。
- 不可分享。
- 打破缓存。
- 它仅限于该会话。
- 增加服务器上的负载。
Cookies
Cookie有两种类型:会话cookie和持久性cookie。离开浏览器时会删除会话cookie,持久性cookie会保存在磁盘上并且可以持续更长时间。要将会话cookie视为持久性cookie,需要设置Max-Age或Expiry属性。
Chrome和Firefox等现代浏览器可以在关闭它们时保持后台进程正常工作,以便您可以从中断的位置继续操作。这可能会导致会话cookie的保留,所以要小心。
那么cookie如何运作?
Cookie包含服务器使用Set-Cookie或Set-Cookie2响应标头设置的名称=值对列表。通常,存储在cookie中的信息是某种客户端ID,但是一些网站也存储其他信息。
浏览器将此信息存储在其cookie数据库中,并在用户再次访问该页面/网站时返回该信息。浏览器可以处理数千种不同的cookie,它知道何时为每个cookie提供服务。
以下是一个示例流程
用户代理 - >服务器
服务器 - >用户代理
用户代理 - >服务器
服务器 - >用户代理
用户代理 - >服务器
服务器 - >用户代理
用户代理 - >服务器