做收录核对时,很多人默认搜索结果里出现的都是网页。实际翻一遍就会发现,图片、PDF、字体文件甚至脚本地址也可能挂在索引里。它们不产生自然流量,却会占掉一部分抓取和索引资源。
先给 URL 分个类
核对之前,先把站点 URL 分成两类:页面型 URL 和资源型 URL。页面型是用户能直接阅读、有标题和正文的那类;资源型是被页面引用、本身不面向阅读的那类。
- 图片与插图:商品图、截图、图集中的单张图片
- 文档类:PDF、Word、Excel、PPT 等下载文件
- 样式与脚本:css、js 文件及其带版本号的变体
- 字体与媒体:woff、woff2、视频分片、音频文件
- 数据类:JSON、XML 接口返回、CSV 导出文件
如果这些地址在搜索结果里占了可观比例,说明索引里混进了不该作为入口的内容。
资源型 URL 为什么会进索引
- 被外部直接引用:别的站点把图片或 PDF 地址贴进正文,蜘蛛顺着外链就爬到了。
- 目录没有访问限制:上传目录可遍历,文件之间互相链接,蜘蛛能一路爬下去。
- sitemap 里误列:生成工具把附件地址一并写进了 sitemap。
- 页面入口本身就是文件:站内多处直接链接到 PDF,等于把它当页面在推。
这几类原因对应的处理方式不一样,所以先定位来源,再决定动作。
核对顺序
- 用 site: 加 filetype 组合查询,看各类文件的大致规模,例如 site 加域名再加 filetype 与 pdf。
- 在搜索控制台或站长平台的索引统计里,按目录分组,找出文件数异常集中的路径,比如上传目录、静态资源目录。
- 翻服务器日志,统计资源型 URL 被爬的比例。如果附件占了大头,重点页面的抓取自然会变慢。
- 对每个可疑路径,确认它是被外链带进来的,还是站内自己链接出去的。
处理时要注意的三件事
第一,别把渲染必需的资源一起挡住。样式和脚本被 robots.txt 屏蔽后,蜘蛛拿到的 HTML 可能缺样式和脚本,页面判断会受影响。要挡的是独立文件目录,而不是整站静态资源。
第二,PDF 一类文件用 X-Robots-Tag 更合适。robots.txt 主要阻止抓取,管不了已经抓到的内容;在响应头里加 noindex,才能表达别放进索引的意图。两者作用层不同,不要混为一谈。
第三,屏蔽之后不会立刻消失。已经进索引的资源需要被重新抓取、重新判断,才可能退出。核对时按周观察,不要在改完当天就下结论。
资源型 URL 的收录问题,本质是索引里混进了非入口内容。与其纠结数量,不如先把站点里哪些地址应该被当作页面这条界线划清楚。
划完界线之后,再回头看站内链接和 sitemap 是否都指向页面型 URL。入口干净了,收录统计才更接近真实情况。