这是令人惊讶的是多么困难找到一个简单,简洁的回答这个问题:最佳方式
- 我有我的网站上
- 文件,foo.zip,我能做些什么来找出有多少人访问过这个文件?
- 我可以使用Tomcat电话如果必要
更新:如果您建议编写一个脚本,你可以点我一个体面呢?
这是令人惊讶的是多么困难找到一个简单,简洁的回答这个问题:最佳方式
更新:如果您建议编写一个脚本,你可以点我一个体面呢?
或者你可以解析日志文件,如果你不需要实时的数据。
cat /path/to/access.log | grep foo.zip | grep 200 | wc -l
在回复评论:
日志文件还包含下载的字节,但别人指出的那样,如果用户取消在客户端的下载,这可能无法反映正确的计数。
最简单的方法可能不是直接链接到文件,而是链接到增加计数器然后转发到相关文件的脚本。
你得到下载_attempts_,这是非常合理的。 – bobobobo 2011-02-11 21:30:42
有关更多信息,请参阅[此答案](http://stackoverflow.com/a/16874980/1804173)中的链接非常有用。 – bluenote10 2015-06-13 20:02:46
使用日志 - 文件的每个GET请求都是另一次下载(除非访问者由于某种原因在中途停止了下载)。
答案“最简单的方法可能不是直接链接到文件,而是链接到一个脚本,该脚本递增计数器然后转发到有问题的文件。”
这是额外的:
$hit_count = @file_get_contents('count.txt');
$hit_count++;
@file_put_contents('count.txt', $hit_count);
header('Location: http://www.example.com/download/pics.zip'); // redirect to the real file to be downloaded
这里count.txt
是一个简单的纯文本文件,存储计数器信息。 也可以将它与downloadable_filename.ext
一起保存在数据库表中。
绝对最简单,如果你有访问日志 – 2008-10-01 15:26:31