站内連結里,指向列表頁的連結往往是最多的。首頁導航、面包屑、相關推荐、上一頁下一頁,都會把蜘蛛引向列表型頁面。于是很多站点在查看收錄情况时會發現,索引里列表頁占了不少比例。但「被抓到」和「该留在索引里」是两件事,列表頁要不要收錄,需要按類型分別判断。
列表頁為什么容易進入索引
列表頁通常有三個特征:入口多、更新频繁、連結數量大。蜘蛛顺着站内連結走,列表頁属于最先被訪問的一批 URL;新内容上线时列表頁會跟着變化,蜘蛛回訪的間隔也相對短。结果是列表頁被收錄的概率並不低。
問题在于,收錄數量上升不等于有效頁面變多。如果列表頁只是把标题和摘要重复罗列一遍,它在索引里能提供的信息有限,還可能和正文頁争同一個查询词。
三種列表頁,要分開看
栏目頁:多數情况下值得保留
栏目頁對應的是一個稳定的内容分類,有明确的主题和固定的 URL。它可以承载分類词、频道词的检索需求,也是蜘蛛發現新内容的常用入口。值得做的是:给栏目頁一個獨立的标题和一段不與其他頁面重复的說明文字,让它在索引里不只是一串連結。
标簽頁:數量要控制
标簽頁的問题不在形式,而在數量。如果一個站每個词都自動生成标簽頁,很容易出現几百上千個内容稀少、彼此高度相似的頁面。這類頁面多了,抓取會被分散,索引里的整体质量也會被拉低。可行的做法是:只保留有检索需求、且能聚合出足够内容的标簽,其余用 noindex 或 robots 挡在索引外。
分頁:第 2 頁以後通常不作為落地頁
分頁是内容列表的延續,本身没有獨立主题,用戶落到第二頁也找不到完整内容。常见的處理是让第一頁保留在索引里,後續分頁用 canonical 指回第一頁,或者不收錄。但不必图省事把整组分頁都屏蔽,分頁連結對蜘蛛遍歷深层内容仍然有用,屏蔽掉反而可能让内容更难被發現。
判断一個列表頁该不该收錄
與其按類型一刀切,不如問几個具体問题:
- 這個列表頁有没有對應的检索需求,還是只是為了站内導航存在?
- 頁面上的内容,是不是正文頁信息的简單重复?
- 它有没有獨立的标题和說明文字,還是只有标题加連結?
- 它和站内其他列表頁,是否高度相似?
- 它被收錄後,會不會抢占正文頁的内鏈入口?
前三個問题偏向「值不值得收錄」,後两個偏向「會不會造成负担」。如果答案大多偏向否定,就该考虑收敛這類頁面。
几種處理方式,作用並不一样
- robots.txt:阻止抓取,但已经收錄的頁面不會因此立刻消失,而且被屏蔽後蜘蛛看不到頁面上的 noindex。
- noindex:让頁面登出索引,前提是蜘蛛能正常抓到它。
- canonical:把索引信号指向主版本,适合分頁和带參數的列表頁。
- 調整内鏈:减少列表頁入口,把站内連結更多指向正文頁。
需要留意的是,noindex 和 robots 混用时容易互相抵消:robots 阻止抓取,蜘蛛就看不到 noindex。分頁或标簽頁要登出索引,優先考虑 canonical 或 noindex,而不是直接屏蔽抓取。
別让列表頁吃掉正文頁的资源
蜘蛛在站内的抓取是有节奏的。列表頁連結多、层級浅,很容易成為主要抓取對象。如果列表頁铺得太多,正文頁的抓取频率和回訪間隔就會受影响。一個简單的检查方法是看服務器日誌:統計蜘蛛對列表頁和正文頁的訪問比例,如果列表頁占了大多數,而正文頁更新後長期不见回訪,就该收紧列表頁的數量和入口。
上线前可以過一遍的检查
- 新增的列表頁是否有獨立主题和說明文字。
- 标簽頁是否只保留有需求、有内容的那部分。
- 分頁是否用 canonical 或 noindex 處理,且與 robots 規則不冲突。
- 列表頁的連結是否分散了通往正文頁的入口。
- 上线後观察日誌,看列表頁與正文頁的抓取比例。
列表頁是站点结构的一部分,不必全部赶出索引,也不适合全部放行。按检索需求、内容重复度和它對正文頁的影响做取舍,比统一屏蔽或统一保留更稳妥。