有没有一种简单的方法来生成IIS中的“死”文件的报告?

我们正在寻找生成最近3个月,6个月和每年在我们的networking服务器上未被击中的文件列表。

IIS可以给我们一个已经被命中的文件列表,但是我想知道是否有一个工具可以在我们的web服务器目录中生成一个没有出现在日志文件中的文件列表。

恐怕没有简单的解决scheme。 我想你将不得不比较你的日志与(静态我想)文件列表。 我能想到的最好的方法是使用LogParser工具。

您可以将日志导入到SQL数据库中,并创build一个包含所有URL的表(请select不同的…)。 然后,您必须使用脚本在您的目录中创build文件名列表,并将生成的文件导入另一个数据库表。 第3步是从表2中select第一个表中没有对应的所有文件名。

Splattne有我要发布的答案。 我只是补充一点,其他的方式去做的事情是做以下事情:

  1. 使用“X_”前缀重命名任何您怀疑未被使用的文件。 例如,将suspect.htm重命名为“x_suspect.htm”

  2. 看你的404日志像一只小鹰。 我们使用grepparsing出所有的404s,并查找没有死的“死”文件。 把它们放回(或修复链接),如果有必要的话。

这不是我最喜欢的方法(即向客户展示一个404),但它确实有助于确认文件是否正在使用。

希望这可以帮助。

Xenu的链接侦查将做一个孤儿的文件检查,如果你给它的FTP访问您的网站。

这一般是一项艰巨的任务,所以我认为你不可能find一个现成的解决scheme。 虽然您可以获取从日志中访问的文件列表,并将其与相关目录中的文件列表进行比较,但是您必须考虑通过以下方式访问的任何文件:

  • server.transfer
  • server.execute
  • #include
  • 服务器端的<script>标签
  • 可能还有一些其他的东西 – 上面的列表只是“经典”ASP的一个明显的例子。

等等。 对于某些应用程序,可能有许多脚本使用的文件,但由于引用它们的方式而未在Web服务器日志中看到。