連結属性不是“屏蔽按钮”
很多人把 nofollow 当成“不让蜘蛛抓”的開關,其實它主要影响的是蜘蛛是否繼續沿着這條連結去發現目标 URL,以及传递多少權重信号。它不保證目标頁面不會被抓取——如果该 URL 出現在 Sitemap、其他普通連結或歷史抓取记錄里,蜘蛛仍然可能訪問。
所以,連結属性應该放在“發現路径”的层面来理解:你是在告诉蜘蛛,這條連結值不值得跟着走,而不是在資料库里刪除一個 URL。
三種常见属性的差別
nofollow
适用于你無法控制或不想背书的連結。比如用戶评论里的連結、付費软文、以及某些不值得传递信号的第三方頁面。加了 nofollow 後,蜘蛛通常不會把该連結作為發現新 URL 的主要路径,但仍可能因其他入口而抓取。
ugc
ugc 是“用戶生成内容”的提示,常用于评论区、论坛帖。它和 nofollow 的作用接近,但语义更明确。對搜尋引擎来说,這有助于区分站点自身推荐的連結和用戶留下的連結。
sponsored
sponsored 用于广告、赞助或付費合作連結。它告诉蜘蛛這條連結带有商业關系。若你站内有明碼标價的推廣位,建议使用 sponsored,而不是普通 dofollow 連結。
内鏈里要不要用 nofollow
站内連結是蜘蛛發現 URL 的主要通道。對栏目頁、詳情頁、分頁、篩選頁這些你希望被抓取的结构,通常不需要加 nofollow。把内鏈大量 nofollow,會让蜘蛛的抓取路径變窄,重要頁面可能因此更晚被發現。
但有几類内鏈可以考虑限制:
- 用戶個人中心里的“登出登入”“修改密碼”等功能性連結。
- 购物车、下單、支付等流程頁面,避免蜘蛛進入無意义的狀態。
- 同一頁面里重复出現的同一 URL 連結,留一個普通連結即可,其余無需額外處理。
這里要注意:不要為了控制抓取预算而把整块導航都 nofollow。如果某個栏目确實不值得抓,更稳妥的做法是調整内鏈位置、层級或 robots.txt,而不是让蜘蛛在頁面里看到一個“此路不通”的标记。
外鏈的 nofollow 與發現路径
出站連結的 nofollow 主要影响你對目标站点的推荐信号,對你自己站点的抓取路径影响有限。不過,如果你的頁面里全是 nofollow 外鏈,蜘蛛仍然會抓取你的頁面,只是不會把那些外鏈当作值得探索的方向。
入站連結則相反:別人给你加的普通連結,往往是蜘蛛發現你新 URL 的重要入口。如果有人用 nofollow 連結指向你的新頁面,蜘蛛通過這條路径發現它的概率會降低,但 Sitemap 和内鏈仍然可以补上。
把連結属性当成路径提示,而不是收錄開關。真正决定蜘蛛走不走、走多遠的,是 URL 本身是否出現在可抓取的鏈路里,以及服務器是否稳定响應。
常见誤用與排查
- 全站導航加 nofollow:蜘蛛难以顺着導航發現栏目和詳情頁,新内容發現變慢。
- 把 nofollow 当成 canonical:nofollow 不解决重复内容,也不指定哪個 URL 是首選版本。
- 分頁連結全部 nofollow:列表頁後續内容可能失去重要發現路径,尤其是内容較多的站点。
- 用 JS 動態插入普通連結,却只给部分連結加属性:蜘蛛看到的連結關系可能與用戶看到的不一致,建议保持可抓取的一致性。
检查时可以從日誌入手:看蜘蛛是否訪問了你希望被發現的 URL。如果某個栏目長期没有抓取记錄,先看它是否只通過 nofollow 連結可達,再检查 Sitemap 和内鏈是否提供了別的入口。
一個简單的判断原則
問自己两個問题:這條連結指向的頁面,我是否希望蜘蛛去發現?如果希望,就別加 nofollow;如果不希望,也要想清楚是否有更合适的 robots.txt 或 URL 结构层面的處理。連結属性适合做“信号补充”,不适合獨自承担“路径管理”。
服務器稳定性、Sitemap 和内鏈结构仍然是蜘蛛抓取路径的主干。把連結属性用對,只是让這條路径更清晰,而不是替代路径本身。