我正在清理一堆乱七八糟的文件 - 有 75GB 的文件我不确定是否通过 apache 访问(如果是,它们很可能位于重定向迷宫后面) - 我已经复制了这些文件,但是使用了新的结构,因为旧结构无法处理这么多的子文件夹。
我想要做的是仅记录对文件系统 /home/httpd/vhosts/sitename/httpdocs/hugedirectory/ 上某个路径之外的文件的访问,这样我就可以知道是否可以安全地删除它们并恢复一些空间。
答案1
保持简单。使用grep
日志文件过滤掉除您感兴趣的目录之外的所有内容。
grep 'GET /hugedirectory/' /var/log/apache2/sitename.access.log
Apache 没有很好的方法来单独记录超出级别的请求VirtualHost
。如果您确实希望 Apache 直接将日志记录到单独的日志文件中,您可以使用自定义日志脚本并将 Apache 的访问日志传输到该脚本来实现。该CustomLog
指令可以指定一个程序,Apache 将启动该程序并将日志数据写入该程序的标准输入,然后您可以在其中进行一些基本解析并自行写入日志文件。
不过说实话,只需使用grep
。
答案2
最简单的解决方案可能是在 Apache 中启用日志记录,然后过滤路径的日志。虽然不如只记录某些文件那么优雅,但可能更简单。
答案3
你应该能够解析你的 apache 日志,查找与基本路径匹配的条目(/var/www/html/hugedir
可能/hugedir
在日志中)。
如果经过一段时间(当然由您决定)后您没有看到任何匹配项,那么它应该是安全的。