热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

网站流量统计中的用户识别方法

1、基于IP的用户识别IP地址是最容易获取的信息,任何的WEB日志中均会包含,但其局限性也较为明显:伪IP、代理、动态IP、局域网共享同一

1、基于IP的用户识别

IP地址是最容易获取的信息,任何的WEB日志中均会包含,但其局限性也较为明显:伪IP、代理、动态IP、局域网共享同一公网IP出口……这些情况都会影响基于IP来识别用户的准确性,所以IP识别用户的准确性比较低,目前一般不会直接采用IP来识别用户。

获取难度:★

准确度:★

2、基于IP+Agent的用户识别

同样基于最简单形式的WEB日志,我们可以增加一项——Agent,来提高单一IP方式识别用户的准确性。Agent也是WEB日志中一般都会包含的信息,通过IP+Agent的方式可以适当提高IP代理、公用IP这类情况下用户的分辨度,同时通过Agent还可以识别网络爬虫等特殊“用户”,但同样准确度也欠高。

获取难度:★

准确度:★★

3、基于COOKIE的用户识别

当你通过自定义Apache日志格式或者Javascript的方法获得用户COOKIE的时候,其实你已经找到了一个更有效的用户识别的手段。COOKIE在未被清除的其前提下可以认为是跟某个访问客户端电脑绑定的(一个客户端有可能包含多个COOKIE),所以用COOKIE来标识用户其实指的是用户使用的客户端电脑,而并非用户本身。

用COOKIE识别用户的方法当然也存在缺陷:最常见的就是COOKIE被清除而导致用户无法与原先记录实现对应;同时由于客户端电脑会被共用,或者用户会在不同的电脑上访问你的网站,这个时候COOKIE就无法直接对应到该用户了。

获取难度:★☆

准确度:★★☆

4、基于用户ID的用户识别

基于用户ID的用户识别是最为准确,因为一般情况下用户不同共享他的用户ID,所以我们可以认为数据中的userid唯一地指向该用户,几乎不存在偏差。当然要使用用户ID来识别用户是需要一定的前提条件的:网站必须是提供用户注册登录服务的,并且可以通过一些手段在点击流数据中记录 userid。

获取难度:★★

准确度:★★★

所以对于一个需要用户ID注册登录的网站来说,用户唯一标识符的选择可以遵从以下顺序:当用户注册登录时以userid为准,当用户在未登录状态浏览时以用户的COOKIE为准,当用户未登录且COOKIE无法获取的情况下以IP+Agent为准;这样就能从最大程度上识别唯一用户。

这里推荐一个网站日志中COOKIE项的自定义设置方法,以便更好地识别用户。COOKIE是从用户端存放的COOKIE文件记录中获取的,这个文件里面一般在包含一个COOKIEid的同时也会记下用户在该网站的userid(如果你的网站需要注册登陆并且该用户曾经登录过你的网站且 COOKIE未被删除),所以在记录日志文件中COOKIE项的时候可以优先去查询COOKIE中是否含有用户ID类的信息,如果存在则将用户ID写到日志的COOKIE项,如果不存在则查找是否有COOKIEid,如果有则记录,没有则记为”-”,这样日志中的COOKIE就可以直接作为最有效的用户唯一标识符被用作统计。当然这里需要注意该方法只有网站本身才能够实现,因为用户ID作为用户隐私信息只有该网站才知道其在COOKIE的设置及存放位置,第三方统计工具一般很难获取。
获取用户信息的途径

通过以上的方法实现用户身份的唯一标识后,我们可以通过一些途径来采集用户的基础信息、特征信息及行为信息,然后为每位用户建立起详细的 Profile:

1) 用户注册时填写的用户注册信息及基本资料;

2) 从网站日志中得到的用户浏览行为数据;

3) 从数据库中获取的用户网站业务应用数据;

4) 基于用户历史数据的推导和预测;

5) 通过直接联系用户或者用户调研的途径获得的用户数据;

6) 有第三方服务机构提供的用户数据。
识别并获取用户信息的价值

通过用户身份识别及用户基本信息的采集,我们可以通过网站分析的各种方法在网站是实现一些有价值的应用:

* 基于用户特征信息的用户细分;
* 基于用户的个性化页面设置;
* 基于用户行为数据的关联推荐;
* 基于用户兴趣的定向营销;
* ……


推荐阅读
  • 本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ... [详细]
  • 本文探讨了 Spring Boot 应用程序在不同配置下支持的最大并发连接数,重点分析了内置服务器(如 Tomcat、Jetty 和 Undertow)的默认设置及其对性能的影响。 ... [详细]
  • 通过Web界面管理Linux日志的解决方案
    本指南介绍了一种利用rsyslog、MariaDB和LogAnalyzer搭建集中式日志管理平台的方法,使用户可以通过Web界面查看和分析Linux系统的日志记录。此方案不仅适用于服务器环境,还提供了详细的步骤来确保系统的稳定性和安全性。 ... [详细]
  • 本文探讨了如何在日常工作中通过优化效率和深入研究核心技术,将技术和知识转化为实际收益。文章结合个人经验,分享了提高工作效率、掌握高价值技能以及选择合适工作环境的方法,帮助读者更好地实现技术变现。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • 网络攻防实战:从HTTP到HTTPS的演变
    本文通过一系列日记记录了从发现漏洞到逐步加强安全措施的过程,探讨了如何应对网络攻击并最终实现全面的安全防护。 ... [详细]
  • 网络运维工程师负责确保企业IT基础设施的稳定运行,保障业务连续性和数据安全。他们需要具备多种技能,包括搭建和维护网络环境、监控系统性能、处理突发事件等。本文将探讨网络运维工程师的职业前景及其平均薪酬水平。 ... [详细]
  • andr ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • Hadoop入门与核心组件详解
    本文详细介绍了Hadoop的基础知识及其核心组件,包括HDFS、MapReduce和YARN。通过本文,读者可以全面了解Hadoop的生态系统及应用场景。 ... [详细]
  • libsodium 1.0.15 发布:引入重大不兼容更新
    最新发布的 libsodium 1.0.15 版本带来了若干不兼容的变更,其中包括默认密码散列算法的更改和其他重要调整。 ... [详细]
  • 随着网络安全威胁的不断演变,电子邮件系统成为攻击者频繁利用的目标。本文详细探讨了电子邮件系统中的常见漏洞及其潜在风险,并提供了专业的防护建议。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 微软Exchange服务器遭遇2022年版“千年虫”漏洞
    微软Exchange服务器在新年伊始遭遇了一个类似于‘千年虫’的日期处理漏洞,导致邮件传输受阻。该问题主要影响配置了FIP-FS恶意软件引擎的Exchange 2016和2019版本。 ... [详细]
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
author-avatar
傻孩纸黄国帅哟
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有