V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Bantes
V2EX  ›  程序员

URL 访问统计防刷有什么解决方案吗?

  •  
  •   Bantes ·
    bantes · 2015-10-19 15:53:25 +08:00 · 4286 次点击
    这是一个创建于 3326 天前的主题,其中的信息可能已经有所发展或是发生改变。

    比如 url 为 http://www.v2ex.com/?pid=xva123
    需要统计该 url 有多少终端(不是 IP )访问,在微信中可以基于 openid 来限制刷量
    但是如果不在微信中,而是在浏览器中,有什么好的办法来解决刷量或者提高刷量成本?
    目前访问渠道有微信、各类 APP 内置浏览器

    13 条回复    2015-10-20 09:45:15 +08:00
    domty
        1
    domty  
       2015-10-19 16:01:41 +08:00   ❤️ 1
    ip 和终端类型两个集合的笛卡尔积?
    Bantes
        2
    Bantes  
    OP
       2015-10-19 16:04:35 +08:00
    @domty 貌似现在没办法验证终端唯一性,微信内部可以基于 openid 来验证该终端对应服务的唯一性,而浏览器的话除了登陆鉴权不知道还可以怎么来验证
    heloman
        3
    heloman  
       2015-10-19 16:10:45 +08:00   ❤️ 1
    @Bantes 针对同一 ip ,用 http 请求的 User-Agent 区分终端如何?这个不够用的话再用 js 获取浏览器和系统硬件信息呢?
    domty
        4
    domty  
       2015-10-19 16:20:14 +08:00
    @Bantes
    简单点 回复的时候往 cookie 里写值,结合 ip 和 cookie 值。
    同一 ip 多次请求还没有 cookie 值得话,统计的时候过滤掉这些值。
    Bantes
        5
    Bantes  
    OP
       2015-10-19 16:21:10 +08:00
    @heloman 那么,如果用户更换 User-Agent 来重复访问的话就可以刷量了。 JS 获取浏览器和系统硬件这个用户可以修改么?
    heloman
        6
    heloman  
       2015-10-19 16:31:07 +08:00
    @Bantes 这个可能没法严格控制的,用户想刷的话总是有途径, ip 是可以换的,即使微信也可以花钱代刷的,能提高刷量成本就行啦 ps:js 获取信息这个东西用户改起来应该有一定困难吧 另外这个功能似乎很多浏览器不支持的,也不是可行方案
    Bantes
        7
    Bantes  
    OP
       2015-10-19 16:46:45 +08:00
    @heloman 是的,目前就是因为没办法完全屏蔽刷量,所以在想办法提高用户刷量成本。微信的花钱代刷,你刷 1000 量,要 1000 个微信号,成本也是很高的,所以基本可以算为没办法刷。
    ethego
        8
    ethego  
       2015-10-19 16:52:03 +08:00
    直接获取用户的网卡 mac 地址或者硬盘序列号,叫你刷
    kslr
        9
    kslr  
       2015-10-19 17:02:21 +08:00
    浏览器指纹
    lygmqkl
        10
    lygmqkl  
       2015-10-19 17:07:42 +08:00
    基于 web 最简单的办法 ip+cookies

    但是不得不考虑以下两个场景
    A. wlan 下多用户访问,比如公司,那么 ip 应该那掉 单独用 cookies
    B. cookies 的性质决定了其不可靠和可被修改,那么要考虑一下了,但是其实如果是大访问量的情况这个部分应该微乎其微

    可能在保证数量下 cookies 是最合适的,你必须要考虑成本和数据。

    也可以复杂点 ip+cookies,同 ip 下多 cookies 处理需要额外的成本,这就要从精度和费用上找平衡点了。

    个人看法希望大神拍砖。
    ChoateYao
        11
    ChoateYao  
       2015-10-19 18:36:00 +08:00
    前期不要做限制,等出结果的时候根据 IP 确认哪些数据是刷的再删除掉。
    lygmqkl
        12
    lygmqkl  
       2015-10-19 18:42:25 +08:00
    @ChoateYao 用 log 也是一个方法,类似这样做减法单次处理的思路也不错。
    29EtwXn6t5wgM3fD
        13
    29EtwXn6t5wgM3fD  
       2015-10-20 09:45:15 +08:00 via iPhone
    用户访问路径来源,跳出率,访问时间
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4140 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 05:19 · PVG 13:19 · LAX 21:19 · JFK 00:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.