蜘蛛池知识

蜘蛛池入口頁的 noindex、nofollow 與 canonical:三個容易被模板預設值坑到的标簽

入口頁能被蜘蛛抓到,不代表它會按你期望的方式被對待。noindex、nofollow、canonical 這三個标簽常常随模板或建站程序預設值一起上线,悄悄改變蜘蛛對頁面的判断。本文拆解三者各自的含义、常见来源和自查方法。

蜘蛛池知识

蜘蛛池入口頁的 noindex、nofollow 與 canonical:三個容易被模板預設值坑到的标簽

蜘蛛池入口頁的作用是把連結暴露给搜尋引擎蜘蛛,但模板、建站程序或複製粘贴时带進来的一些 meta 标簽,可能正好把這件事抵消掉。noindex、nofollow、canonical 這三個最常见,問题往往不在寫错,而在没人注意到它們一直存在。

noindex:一句“別收錄”,把入口頁從索引里摘掉

noindex 的作用是告诉搜尋蜘蛛:這個頁面可以抓,但不要放進索引。對入口頁来说,這通常是致命的——蜘蛛来了、連結也讀到了,頁面本身却不會成為可检索的落地頁,長期看入口頁的抓取频次也可能被压低。

它通常從哪来

  • 測試环境或 staging 模板没删干净,直接複製到线上;
  • 建站程序對某些“空頁面”“标簽頁”預設加了 noindex;
  • 批量生成时用同一套 head,某個開關全站生效;
  • 改版迁移时,舊站的 SEO 插件配置被一並带過来。

排查方式很直接:随机抽十几頁入口頁,查看响應 HTML 里 head 部分的 meta robots,也顺手看一下 HTTP 响應头里有没有 X-Robots-Tag。两處都可能下發 noindex,只看一處會漏。

nofollow:管的是連結,不是頁面

nofollow 常被誤解。它约束的是頁面上的連結是否传递權重和信号,不直接影响頁面能不能被抓。但入口頁如果整頁連結都带 nofollow,或者 head 里寫了 meta robots 的 nofollow,對“通過連結引導蜘蛛走下一跳”這件事就没有帮助了——蜘蛛可能仍然會去訪問,但你在主動放弃這部分引導意图。

另一種情况更隐蔽:站内菜單、頁脚、模板里某個通用组件带了 nofollow,结果每張入口頁上真正想推的連結被包在里面。检查时要看的是目标連結本身,而不是整頁設定。

canonical:指向谁,等于告诉蜘蛛谁是正主

canonical 用来声明頁面的規范版本。入口頁如果因為模板复用,canonical 统一指向了首頁或某個模板示例頁,等于告诉蜘蛛“這些頁面都是那一個的副本”,入口頁自身很难被当作獨立 URL 處理。批量生成时這類错誤一旦發生,就是全站級別的。

常见来源有:CMS 的預設 canonical 規則、多域名解析时没有区分主机名,以及泛解析下所有子域都指向同一個 canonical。

日常自查可以這样排

  1. 每批入口頁上线後,抽 5% 到 10% 的样本,看 head 里的 robots、canonical 和連結的 rel 属性;
  2. 用同一套模板生成的两批頁面互相對比,確認關键标簽一致;
  3. 批量改動後重新抽样,不要只驗證改過的那一頁。
這三個标簽不决定蜘蛛来不来,但會决定蜘蛛来了之後把你的頁面当成什么。它們的成本很低,漏掉的代價却不低,值得纳入常規巡检。

最後提醒一点:這些标簽的生效需要蜘蛛重新抓取並更新索引,改完不會立刻体現在日誌或索引结果里。观察时至少给出一個抓取周期,別用一两天的情况去判断改對了没有。