防止查看计数被滥用的最佳方法

时间:2014-01-10 14:02:19

标签: python cookies redis counter

我目前正在使用Redis存储每次加载页面时的视图计数。它的工作非常棒,但我唯一担心的是它会被滥用。当用户在我的网站上登录时,只有当他们还没有查看该主题时(再次由Redis跟踪),视图计数器才会更新,以便滥用滥用。

我的问题是我没有帐户的用户。如果我每次加载页面时都要更新视图计数,如果有人创建了一些内容,他们就可以注销并刷新页面,因为他们想要查看他们的视图数量。我的第一个想法是通过会话cookie识别每个非帐户用户(我已经跟踪通过会话cookie登录的用户)但是如果有人清除了该cookie,它将再次变得无用。另一个想法是IP地址,但通过动态IP地址,它也不是非常可靠。

所以我的问题是,跟踪未知用户的观看次数的最可靠方法是什么?

1 个答案:

答案 0 :(得分:1)

欢迎来到追踪观看次数的世界!

我会告诉你一些商业机密。

你想要的可能是一个像素跟踪器。

像素跟踪器是一种服务于1x1像素的服务,除了记录请求的时间外什么也不做。因此,如果您说要跟踪访问某个线程的某个人,您可以创建一个线程名为sha512(thread_name)的sha512哈希值并获取哈希值。然后使用此哈希请求从您的网络服务器获取一个像素,如下所示

/px/<sha512hash>.gif

然后你可以将这个请求插入到数据库中,下次渲染该页面时,你要标题,你请求那个像素,然后你就会意识到这个用户已经为这个标题提供了一个像素。您忽略该请求,不会增加视图计数器。