为什么我应该记录每个未找到的页面,我可以停止它吗?

为什么我应该记录每个未找到的页面,我可以停止它吗?

我有一台服务器,上面托管着大约 10 个不同的网站。我注意到,对于某些网站,我经常在 Apache 日志中收到如下错误消息:

[Sun Sep 23 09:46:54 2012] [error] [client 211.154.213.122] File does not exist: /dir/dir/htdocs/nameOfSomeFileThatDoesNotExist

在很多情况下,这些File does not exist错误发生在不存在的目录中。

如果有人尝试访问我网站上不存在的目录中的页面,那么据我所知,他们会在浏览器中收到一条标准消息,内容为:

The requested URL /nameOfSomeFileThatDoesNotExistwas not found on this server

既然如此,我看不出这真的是一个威胁或问题。如果有人访问我服务器上的一个域,输入一个随机页面并收到 404 消息,我为什么要关心?看起来大多数请求都是针对以前存在但现在不存在的页面,也许偶尔会尝试钓鱼目录及其内容(我的所有目录都有一个 index.html,不应该被读取为目录)。

当这种情况发生时,我有什么理由继续在 Apache 中收到警报吗?这似乎只会在日志中造成很多噪音,我正在尝试简化一些事情,以便能够更清楚地看到真正重要的错误。

这是否表示网站结构存在问题?由于我似乎没有从服务器上的所有网站收到此错误,因此我不确定是否只有某些网站收到这些页面请求,或者网站的结构是否存在差异。

最后,假设我可以安全地忽略对不存在的页面和目录的请求,那么防止它们淹没我的日志的最佳方法是什么?我是否只是更改错误报告级别,还是在网站处理方式上做一些不同的事情?

答案1

Apache 日志文件是 Web 服务器管理员的良好信息来源。这些 404(未找到)错误可能表示以下几种情况:

  1. 中断可能配置错误的管理员访问权限的尝试。
  2. 用户输入错误的 URL。
  3. 该网站或其他引用网站中的链接断开。
  4. 错误的重写/重定向规则。
  5. ETC...

用户代理和 IP 地址有时可以给你一些提示。例如,如果一段时间内的所有请求都来自一个 IP,并且它们请求的是一些众所周知的 URL,如/phpmyadmin/phppgadmin,你就可以判断这是一次破坏性尝试。

相关内容