在蜘蛛池的日常操作里,入口頁指向目标URL的那一條連結是整件事的關键。有人担心入口頁把權重“漏”出去,顺手给連結加上 rel="nofollow";也有人直接套模板,没注意連結属性里被带上了 sponsored 或 ugc。這些属性會不會让搜尋蜘蛛停下来不再跟進,是問得比較多的一類問题。
先分清两件事:不传递和不訪問
rel="nofollow" 最初的作用是告诉搜尋引擎“這個連結不是我推荐的,不要把我對它的信任传過去”。它约束的是评價信号的传递,並不是直接命令搜尋蜘蛛“不许訪問”。搜尋蜘蛛看到 nofollow 連結,仍有可能去訪問這個地址,只是它不太會把入口頁的信任值算到目标URL头上。
所以加了 nofollow 之後,目标URL“被發現的概率”通常不會立刻归零,但“被持續、稳定地抓取”這件事會變得不可控。如果入口頁本身没有其他出鏈,目标URL很可能只被抓一两次就沉下去。
几種連結属性要分開看
- rel="nofollow":不传递信任,抓不抓由搜尋引擎自行判断,實践中更接近“可能抓,但不当作推荐”。
- rel="sponsored":标明是付費或广告性质的連結,作用與 nofollow 接近。
- rel="ugc":标明来自用戶生成内容,比如评论、论坛帖,同样属于不传递信任的一類。
- 不带 rel 的普通連結:預設按可传递信任處理,搜尋蜘蛛跟進的可能性最高。
如果做入口頁的目的就是让搜尋蜘蛛顺着連結找到目标URL,那么這几種属性都不适合出現在關键連結上。
哪些情况會把問题放大
單獨一條 nofollow 連結,影响未必看得出来。但下面這些情况叠加时,跟進概率會明顯下降:
- 入口頁只有一條指向目标URL的連結,而且带 nofollow,等于唯一的通道被削弱了。
- 入口頁本身的抓取频次就低,搜尋蜘蛛本来也来不了几次。
- 目标URL在新域名或新目錄下,外部連結很少,只能靠入口頁带路。
- 連結由 JavaScript 動態生成,同时 a 标簽上又寫了 rel="nofollow",等于双重不确定。
怎么驗證是不是真的被跟進了
不要靠猜,用日誌和對照實驗说话:
- 在入口頁放一條带 nofollow 的連結指向測試用目标URL,其余條件保持不變。
- 观察服務器日誌里该目标URL的抓取记錄,记下第一次出現的日期和之後每次的間隔。
- 再做一個對照组:结构和入口頁一致,但連結不带任何 rel 属性,看抓取频次和持續時間差多少。
- 對比两组資料。如果带 nofollow 的那组只在最初被抓一两次,之後長期没有動静,說明這條通道基本失效。
需要提醒的是,日誌里的 User-Agent 可以伪造,只看 UA 並不足以判断来訪者是不是真的搜尋蜘蛛。可以结合反向解析结果、是否請求 robots.txt、回訪間隔是否規律等行為特征一起判断。
更稳妥的寫法
如果入口頁存在的意义就是把搜尋蜘蛛引到目标URL,關键連結就寫成普通連結,不加任何 rel 属性。想控制信号传递,應该從入口頁的质量、規模、連結去向的合理性上做取舍,而不是靠加一個属性来图省事。
把 nofollow 当成開關的人,往往會發現這個開關没那么好使:它影响的是搜尋蜘蛛如何看待這條連結,而不是它今天来不来。
最後要说的是,任何調整都只是提高被發現的概率,不等于目标URL一定被抓取,更不等于會被收錄。抓取、收錄、排名是三件不同的事,蜘蛛池和入口頁能帮上忙的,只是最前面那一段。