Apache 日志 - 它们可用于查看文件是否曾被调用/使用过

use*_*676 0 logging apache-2.2

这是一个奇怪的问题,但我的直觉告诉我有一种简单的方法可以做到这一点:

我有一个始终处于开发阶段的项目,它使用 PHP 编写,并且已经有 14 年的历史了。尽管每一次尝试都在开发它,但那里还是有大量文件。PHP 位没问题,我可以通过每个标题中的数据库日志来做我需要的事情。

我正在研究 apache 的东西——css、gifs、png、旧的 jquery 引用、我可能会也可能不会招募的旧 js 文件。这些文件大约有 3,000 多个。

许多是对不再使用的旧图像的图像引用。有些是我早就停止使用的 jQuery 库。问题是它们看起来都像我记得以前做过的事情,并且有很多遗留的衰减例程有时需要这些旧的图像/css/js/{在此处插入}才能发挥作用。

基本上这不是一个网站,它是一个 PHP 引擎,可以抛出很多东西并且很难跟踪,所以我只是把这些旧的引用留在里面。

我想要的是一种遍历 Apache 日志的方法,以获取已运行一年多的安装,并确定每个人是否自创建服务器以来从未引用或提取过该图像或 css 或任何内容。

有没有办法逐项验证Apache是​​否曾经使用过它?我有很多运行此代码的服务器,最好在每台服务器上运行它,这样(理想情况下)它是一种从 Apache 日志获取不同文件调用(和计数?)的方法。Urls 或 UNC 路径都可以。

vor*_*aq7 5

我想要的是一种遍历 Apache 日志的方法,以获取已运行一年多的安装,并确定每个人是否自创建服务器以来从未引用或提取过该图像或 css 或任何内容。

我想要的是无限的货币供应——你不可能总是得到你想要的

最接近的方法是扫描 Apache 访问日志以查看客户端正在访问哪些文件,但这并不能保证永远不会使用该文件。

  • 它可以被 PHP 包含使用 require
  • 它可以被您的服务器上从未做过的事情使用(管理页面)
  • 可能是它不经常使用,并且您的日志不会返回那么远
    (我的日志每天滚动,我只在服务器上保留一周 - 如果您不需要它们用于审计目的,这种情况并不少见)。

如果你想正确地做到这一点,你将不得不让你的开发人员进行适当的代码审计。这是确定需要/不需要什么的唯一方法。

或者,您可以扫描可用日志,删除未引用的任何内容,然后在发现内容损坏时添加回项目。如果您有良好的版本控制,这可能是一个可以接受的解决方案。

  • 你错了。我从大约 14 年的经验中知道这一点。我已经争论完了。如果您不喜欢我的答案,请随时等待另一个答案,或者如果您找到更喜欢的替代方案,请发布您自己的答案。 (2认同)