站内搜索页、标签页、归档页这类自动生成的 URL,通常不是运营主动创建的,却经常在抓取日志里占到不小比例。它们不直接影响用户浏览,但会占用抓取资源,也可能挤掉真正需要被发现的页面。
这些 URL 是怎么被蜘蛛发现的
蜘蛛只会沿着链接走,不会凭空知道地址。只要页面上存在指向参数页的链接,这个 URL 就进入了发现流程,哪怕它完全由程序生成、每次访问内容都不一样。
- 站内搜索提交后的结果页,常带 q、s、keyword 之类参数;
- 标签云、文章底部的标签链接、热门关键词模块;
- 按年月生成的归档页,以及日历组件里的日期链接;
- 列表页的排序、筛选、翻页组合出的参数序列。
如果这些链接出现在全站导航或页脚,等于每个页面都在向蜘蛛重复推荐同一批地址,抓取量会被长期分走一块。
常见源头与判断标准
站内搜索结果页
参数组合接近无限,同一个模板能生成成千上万个地址,页面内容还高度相似。除非搜索页本身有稳定的检索价值,通常不值得让蜘蛛深入。
标签与聚合页
标签页要看质量:围绕明确主题、有独立描述和一定数量内容的标签页可以保留;只有几条链接、内容与列表页重复的标签页,抓取收益很低。
归档与日历页
纯按时间生成的归档页对用户价值有限,对蜘蛛同样是重复内容。保留按月归档、去掉按日归档,是常见做法。
处理顺序:先收敛链接,再谈屏蔽
- 先看入口:确认这些链接从哪些模板、哪个模块输出,改模板比事后屏蔽更省事。
- 收敛内链:把标签云、日期链接从全站公共区域移除,只在相关页面出现,减少重复推荐。
- 限制爬取:对确定无价值的路径用 robots.txt 屏蔽。注意屏蔽的是抓取,不等于 URL 不会被发现,有外链指向时它仍可能出现在队列里。
- 标记页面:需要保留但不想收录的页面,可用 noindex 配合 follow,让链接关系继续传递。
- 收紧 Sitemap:清单里只留需要被索引的地址,不要把参数页批量写进去,否则等于主动扩大抓取面。
- 观察日志:处理后再看抓取分布,确认参数页比例是否下降,并检查是否误伤了正常页面。
屏蔽和 noindex 解决的是要不要抓、要不要收;内链结构决定的是蜘蛛会不会走到这里。前者是补救,后者更接近根源。
验证效果时看什么
- 参数页在总抓取量中的占比是否下降;
- 被屏蔽路径是否仍有大量访问,返回码是什么;
- 核心栏目页与详情页的抓取次数有没有因此上升;
- 日志里是否出现新的、意料之外的参数组合。
这些页面本身没有错,问题往往出在数量和入口位置。把来源控制住,比事后逐条屏蔽更省力,也更稳定。