2012-01-16 65 views
0

我有我的web项目上的几个文件。他们都用nginx的帮助发送给客户端。nginx挂钩?或任何其他方法

但我想知道(并为最终用户显示)文件下载了多少次。

例如文件有网址,如:example.com/file.ppt

和nginx的设置是未来:

location ~* \.(ppt|swf)$ { 
    root /path/to/static/content; 
    expires  30d; 
} 

所以我的问题:可以发送nginx的一些网址有一定的要求?或别的什么东西,当有人试图下载某些文件?

回答

0

你可以使用grep算上nginx的access.log的successed下载文件,例如:

grep的-c file.ppt的access.log

+0

有很多日志(和太名为.gz),以及如何我可以确定已经计数的东西,而不是? – user1016265 2012-01-17 11:37:13

+0

你可以一个接一个地解压缩并手动计数。为了将来的计数,你可以使用nginx的logrotate脚本,如下所示: ' postrotate [! -f /var/run/nginx.pid] || kill -USR1'cat/var/run/nginx.pid' /usr/bin/logparser.sh ' 只要确保将参数“delaycompress”添加到logrotate config – 2012-01-17 18:44:30