要区分访问、抓取与索引,核心是看三条独立记录:服务器访问日志里有没有搜索引擎爬虫的请求,抓取工具报告里该 URL 是否被抓取成功,以及搜索结果或索引状态里该 URL 是否真的能被检索到。访问只说明请求到达了 WordPress 服务器,抓取说明爬虫读取了页面,索引才决定页面能否出现在搜索结果中。三者逐级递进,但前一步成功并不保证后一步发生。
访问是 HTTP 请求到达服务器并被处理,日志中会出现状态码、时间、User-Agent 和请求路径。抓取是搜索引擎爬虫下载并解析页面内容,可能成功、被重定向、被拒绝或超时。索引是搜索引擎把页面内容存入可检索的数据库,只有被索引的页面才可能出现在搜索结果里。
判断顺序应当是:先确认爬虫是否来访,再确认抓取是否成功,最后确认索引状态。任何一步缺失,都不能用后一步的结论去反推前一步。
Disallow 拦截。结果说明:被拦截会导致爬虫无法抓取,但 robots.txt 的限制不等于可靠的索引移除,页面仍可能因外部链接被索引。site:你的域名 做初步观察。结果说明:未编入索引时,需要区分是“已抓取但未索引”还是“尚未抓取”,两者处理方向不同。如果日志显示爬虫来过,但抓取工具报告“已发现未抓取”,可能原因包括:服务器响应过慢、robots.txt 拦截、页面被 noindex 标记、URL 参数过多导致重复,或站点整体抓取预算有限。此时应逐项排除,而不是直接断定是服务器问题。
如果日志里完全没有爬虫记录,可能原因包括:站点未被提交、外链极少、robots.txt 拒绝、DNS 或防火墙拦截。需要先确认爬虫能否从公网正常访问该 URL。
抓取成功只说明页面被读取。未索引的常见解释有:内容质量低或与站内其他页面高度重复、页面被 noindex 标记、 canonical 指向了别的 URL、页面是登录后或需要交互才能看到的内容。判断方法是查看页面源代码中的 meta robots 和 canonical 标签,并与实际希望被索引的 URL 对比。
HTTPS 只保证传输加密,不保证内容会被索引,也不保证排名。若页面本身设置了 noindex,即使服务器返回 200 也不会进入索引。
假设某篇 WordPress 文章的 URL 在日志中返回 200,抓取工具显示“已抓取”,但搜索不到。此时不能说是服务器故障,因为访问层正常。应继续检查该 URL 的 meta robots 是否为 noindex、canonical 是否指向其他页面、内容是否与已有文章重复。只有排除这些之后,才考虑索引尚未更新或抓取预算不足。
下一步:打开你站点的访问日志,筛选一次目标 URL 的爬虫请求,记录状态码;再对照抓取工具中的抓取状态和索引状态,把三个结果写在同一行做对比。