抓取、索引和排名是三个先后不同、判定方式也不同的环节:抓取是搜索引擎发现并获取页面内容,索引是把页面内容存入可供检索的数据库,排名是用户搜索某个词时页面出现在结果中的位置。页面被抓取不等于被索引,被索引也不等于有排名。判断问题时,必须先确认卡在哪一步,再决定下一步动作。
很多站点看到搜索结果里能搜到自己的品牌名或标题,就认为排名已经正常。实际上,这种查询命中的往往是索引层的匹配,并不代表目标词有稳定排名。搜索引擎可能已经保存了页面,但对某个具体查询词判断为相关性不足、竞争力不够,或者只是把它放在很靠后的位置。
反过来也成立:页面没有出现在任何搜索结果中,可能是根本没被抓取,也可能是抓取了但被判定为低质量未索引,还可能是已索引但目标词竞争过于激烈。三种情况的处理方式完全不同,所以不能只看“搜不到”这一个现象就下结论。
先做抓取层检查。查看服务器访问日志中搜索引擎爬虫的请求记录,确认目标 URL 是否被请求过、返回状态码是什么。如果日志里完全没有该 URL 的请求,说明抓取尚未发生或未被调度到,此时应检查内链是否可达、robots 规则是否误屏蔽、站点地图是否提交且格式正确。
再做索引层检查。用站点查询指令查看该 URL 是否在索引中,例如在搜索框输入 site:你的完整URL。如果抓取正常但查询不到,可能是内容与已有页面高度重复、页面返回了错误的规范化标签、或者内容质量未达到索引门槛。此时应检查页面的 <link rel="canonical"> 指向、是否有 noindex 标签、以及正文是否与站内其他页面大量雷同。
最后做排名层检查。只有确认页面已被索引后,排名才有讨论意义。用目标词在无登录、无个性化干扰的环境下查询,记录页面出现的位置区间,而不是只看“有没有出现”。排名本身受查询词、地域、设备、时间影响,单次查询结果只能作为参考,不能当作固定结论。
site: 查询确认是否已进入索引。这套顺序的价值在于:它把“搜不到”拆成了可验证的分步问题。如果日志显示爬虫从未访问,却去优化标题和关键词,就是方向错误;如果页面早已索引只是排名靠后,却去反复提交站点地图,同样解决不了问题。
上述方法适用于自有站点、能拿到服务器日志、且目标 URL 明确的情况。如果页面依赖 JavaScript 渲染,日志中可能只看到资源请求而看不到完整内容抓取,此时需要额外核对渲染后的 HTML 是否包含正文。如果站点使用 CDN 或反向代理,日志可能不完整,应以源站日志或搜索平台提供的抓取统计为准。
判断结果可以归纳为三种:日志无请求,问题在抓取;有请求但索引查询不到,问题在索引;已索引但目标词无位置,问题在排名与竞争。三种结果对应三套动作,不要混用。
下一步:挑一个你关心的具体 URL 和目标词,按上面的顺序走一遍,把每一步的实际结果记下来。只有拿到这三个环节各自的状态,后续的优化动作才有依据。