【发布时间】:2011-09-08 16:14:24
【问题描述】:
我一直在测试我编写的一个小应用程序,它基本上执行 http HEAD 请求来检查页面是否存在、重定向等。我注意到有些页面对 HEAD 的响应与对 GET 请求的响应不同。例如:
curl -I http://www.youtube.com/bbcpersian
返回 404。它肯定存在。一些(相当主要的)网站甚至返回 500 错误以响应 HEAD - 我猜这不是故意的。
所以我的问题是:
- 除了配置问题或网站管理员想要阻止机器人之外,是否有任何充分的理由说明某些网站(或网站中的页面)会出现这种行为?
- 如果我不能依赖 HEAD 请求,我是否只需要执行 GET 并在获得标头后中止请求。这感觉有点“错误”……
虽然以 % 表示具有这种行为的页面数量很少,但最终会手动调查每个误报,这会导致大量工作浪费。
【问题讨论】:
标签: http http-headers web-crawler http-head