3

我正在寻找一种方法来跟踪对页面的访问次数,而不计算重复项(比如有人多次刷新),我想找出最好的方法来做到这一点,而不需要跟踪每个 IP 地址查看页面。也许是饼干?还有其他建议吗?

4

5 回答 5

4

使用Webalizer分析您的日志文件或使用Google Analytics为您跟踪这些指标,或者 - 如果您正在寻找可扩展和自托管的解决方案,请尝试Piwik

Piwik 是一个可下载的开源(GPL 许可)实时网络分析软件程序。它为您提供有关网站访问者的详细报告:他们使用的搜索引擎和关键字、他们说的语言、您的热门页面……等等。

无论如何,没有理由在这里重新发明轮子。此外,上面提到的软件只是网络分析工具的一小部分。

于 2010-07-12T10:00:11.123 回答
1

redis使用or存储/增加键/值memcache,然后运行 ​​cron 作业以每隔 x 分钟存储页面/用户的值。不需要把事情弄复杂。

于 2016-03-16T19:42:59.533 回答
0

Cookie 是实现此目的的好方法,但是您必须记住,用户可能禁用了 cookie……当用户访问您的页面时,只需检查您的 cookie 是否已经存在,如果没有,count++ :)

于 2010-07-12T10:00:53.230 回答
0

一块饼干就可以了。只需在每个页面视图中检查它是否已设置。如果有,就不要计较了。否则,计算它并设置cookie。

每次访问后,您都会遇到未启用 cookie 或清除 cookie 的问题。您应该将此方法与 PHP 会话配对:不要在每个页面视图上执行该过程,而是在会话开始时只执行一次。这至少可以避免在单个会话中计算访问次数。

所有这一切都是您想要在客户端存储所有内容。如果您在服务器端,您可以使用 IP 地址,或者将它们与用户代理字符串配对。

或者,只是使用谷歌分析......

于 2010-07-12T10:01:11.733 回答
0

您在其他评论之一中提到您已经在使用 Google Analytics,因此您应该能够执行以下操作:

创建一个自定义报告,其中“页面”作为维度,“唯一身份访问者”作为指标。这将告诉您在任何时间范围内您的所有页面都有多少唯一访问者。

于 2010-07-26T18:19:11.970 回答