超过一百万个 404?

超过一百万个 404?

使用 Analog 6 进行网络统计,我很惊讶地发现 54 天内有超过一百万个 404 错误。我看得对吗?404 与“200 OK”页面浏览量的比例是否不寻常?我在实际 URL 列表中没有看到任何 404;损坏 URL 的列表在哪里?如果这很重要的话,该网站是 unix/apache 上的 html、WordPress 和 asp 页面的组合。

Requests       Status Codes
 6548392       200 OK
     807       206 Partial content
 1830136       301 Document moved permanently
   61795       302 Document found elsewhere
 3091342       304 Not modified since last retrieval
    3042       400 Bad request
   49012       403 Access forbidden
 1043694       404 Document not found
    2936       500 Internal server error
     411       503 Service temporarily unavailable

一般统计数据:

Successful requests:                   9,640,541 
Average successful requests per day:     183,490 
Successful requests for pages:         1,620,543
Failed requests:                       1,099,095 (20,066) 

答案1

损坏的 URL 列表将位于实际的日志文件中。目前看来,您系统的请求中约有 15% 是 404。这确实看起来异常高。

如果让我猜测的话,我敢打赌你的页面模板包含指向损坏的图像、javascript 或 css 文件的链接。

对日志文件进行快速 grep 可能会揭示大部分细节。

答案2

我同意 404 错误的数量相当高,但这可能是自动机器人试图利用软件中已知的漏洞。

当然,这并不完全一样,但我们的网络服务器每个月都会出现数万个 404 错误,通过分析这些 URL,你会发现好像某个机器人正在尝试对数百种不同的产品(我们都没有安装)进行已知的 SQL 注入。

这是一项艰巨的初始任务,但是从您查找真正的 404 的首选方式中排除漏洞 URL,它就会变得更加准确。

答案3

如果您无法按照建议访问原始日志,请考虑对您的网站进行爬网以查找损坏的链接。请参阅W3C 的链接检查器,指定递归检查链接文档,递归深度有意义。

相关内容