提交URL后,真正值得看的不是“提交成功”提示,而是服务器日志中与该次抓取对应的记录。最该核对的字段是:时间戳、请求方法、请求路径、查询字符串、状态码、User-Agent、Referer、响应大小和响应时间。它们分别回答“什么时候来的、要了什么、结果如何、是谁来的、从哪里来、返回了多少内容、花了多久”。
下面用一个假设例子说明。假设你运营一个内容站,把 https://example.com/guide/seo-basics 通过站长平台提交,希望它被重新抓取。第二天你在日志里看到一条记录:
203.0.113.10 - - [12/Mar/2025:09:14:22 +0800] "GET /guide/seo-basics HTTP/1.1" 200 18432 "-" "Mozilla/5.0 (compatible; ExampleBot/1.0)" 0.312
这条记录里,GET 是请求方法,/guide/seo-basics 是请求路径,200 是状态码,18432 是响应字节数,0.312 是响应时间。看到 200 只能说明服务器成功返回了页面,不能直接说明页面已被索引。要判断提交是否真正生效,还要结合时间、User-Agent 和返回内容综合看。
时间戳要和提交时间对照。如果日志里最新一次抓取发生在提交之前,那它和这次提交无关。常见错误是把历史抓取当成提交后的响应,从而误判“提交没效果”。核对时注意服务器时区,日志用 UTC、后台用本地时间时,差几个小时很常见。
请求方法通常是 GET 或 HEAD。HEAD 只返回响应头,不返回正文,适合检查可访问性,但不能用来判断正文是否被读取。请求路径要和你提交的 URL 完全对应,包括大小写和结尾斜杠。若日志里出现的是 /guide/seo-basics/,而你提交的是不带斜杠的版本,就要检查是否存在重定向,以及重定向链是否过长。
带参数的 URL 容易出问题。假设你提交的是 /search?q=seo,日志里却只看到 /search,说明参数可能在跳转或规范化过程中被丢弃。核对查询字符串时,重点看参数是否完整、顺序是否被改写、是否出现多余的跟踪参数。参数不同,返回内容可能不同。
状态码是最直接的判断依据,但不能只看一个数字:
200:服务器正常返回内容。仍需确认返回的是目标页面,而不是软 404 或空模板。301 或 302:发生跳转。要看跳转目标是否为你希望被抓取的 URL,以及跳转次数是否过多。404 或 410:页面不存在或已删除。提交这样的 URL 没有意义。403 或 401:访问被拒绝。可能是权限、防火墙或防盗链规则导致。429 或 503:请求过多或服务不可用。可能是临时限流,也可能是服务器过载。如果状态码是 200,但响应大小明显小于正常页面,比如只有几百字节,可能是返回了验证页、错误页或空内容。这时要结合响应大小一起判断。
User-Agent 能帮你区分不同抓取来源。不同搜索引擎、不同工具和不同版本的爬虫标识可能不同,需要分别核对,不能用一个标识推断所有来源。Referer 在抓取请求中经常为空,这是正常的;如果出现 Referer,可以看它是否来自站内链接、站点地图或其他页面。
响应大小可以和正常页面做对比。假设正常页面约 18000 字节,某次抓取只有 900 字节,就值得检查是否返回了错误提示或精简模板。响应时间过长可能导致抓取中断或降低抓取频率,但它不是索引与否的唯一决定因素。可以按同一路径多次记录取中位数,减少偶发波动的影响。
需要提醒的是:robots.txt 的抓取限制不等于可靠的索引移除;站点地图不保证收录;HTTPS 也不保证安全无漏洞或排名。日志核对只能说明抓取行为,不能替代对索引状态的单独检查。
下一步,建议你为提交的 URL 单独建一张核对表,记录提交时间、日志中对应的时间戳、状态码、响应大小和 User-Agent。连续观察几次抓取后,再判断是提交未生效、抓取被拦截,还是页面本身返回了异常内容。