我现在在我的服务器上有直接指向文件的下载链接。我有一套相当复杂的重写规则,但它们不会影响我的要求。
我想做的是统计下载次数。我知道我可以编写一个 PHP 脚本来回显内容并使用重写规则,以便 PHP 脚本处理所有下载。
但是,有几点我很担心:
- 由于粗心或未被注意的错误,某些危险路径(例如
/etc/passwd
,../../index.php
)有可能不会被阻止 - 需要
HTTP 404 Not Found
在我更喜欢让 Apache 处理它们的脚本中处理响应(和其他)(我有一个依赖于服务器重定向变量的错误处理程序脚本) - HTTP 标头(如内容类型或修改时间)可能未正确设置
使用 PHP 脚本通常不允许实际上我可以检查一下,但需要更多的编码和调试。HTTP 304 Unmodified
响应,因此浏览器缓存将毫无用处,并且重新下载会消耗额外的带宽- PHP 脚本比直接由 Apache 直接加载文件使用更多的处理能力
所以,我想找到一些其他的方法来执行统计。例如,当某些文件(在某些目录中)被请求和下载时,我可以让 Apache 触发脚本吗?