做入口頁的时候,很多人是從目标站直接複製連結的,複製到哪里就贴到哪里。于是一個入口頁上同时出現了 http://example.com/a、https://www.example.com/a、https://example.com/a/ 這几種寫法。它們在浏览器里都能打開,看上去没什么差別,但在搜尋蜘蛛的视角里,這些往往並不是同一個 URL。
為什么同一篇文章會出現好几種寫法
- 目标站本身就支持多個版本訪問,比如 http 和 https 都在跳轉前可打開。
- 連結来自不同渠道,有人複製带 www 的,有人複製不带 www 的。
- 站点中途換過域名、加過 https,老連結没清理,新連結又是另一種寫法。
- 手工拼接連結时,结尾斜杠加不加、大小寫怎么寫,全凭习惯。
搜尋蜘蛛眼里,哪些差別算不同 URL
协议:http 與 https
http 和 https 通常被当作两個不同的地址。即使目标站做了跳轉,搜尋蜘蛛也要先訪問原地址、再跟随跳轉,才能到達最终頁面。入口頁里两種协议混着寫,等于把同一批目标拆成两批地址去發現。
主机名:www 與非 www
www.example.com 和 example.com 一般也不會自動合並。除非目标站把其中一個 301 到另一個,否則在抓取层面它們就是两個入口。入口頁如果两種寫法各出現一部分,日誌里看到的形態會很杂。
路径细节:结尾斜杠、大小寫、預設端口
這部分情况要分開看。預設端口(:80、:443)和主机名大小寫,搜尋引擎通常會做归一化處理;但路径部分的大小寫、结尾斜杠加不加,通常會当成不同地址,尤其是服務器對這两者返回不同狀態碼的时候。
混用會带来哪些實际問题
- 發現數量虚高:入口頁声明的連結數看起来很多,實际指向的頁面可能只有一半。
- 抓取變分散:同一内容要被抓取多次,落在真正新頁面上的抓取机會就少了。
- 日誌难判断:排查“搜尋蜘蛛到底有没有發現目标 URL”时,同一頁面以多種形態出現,容易得出错誤结论。
- 信号被拆開:如果目标站侧没有做好規范化,多個版本各自被訪問、各自积累連結信号,效果被稀释。
先确定規范版本,再统一入口頁
- 在目标站確認一個規范地址,明确用哪個协议、带不带 www、路径怎么寫。
- 訪問目标站的其他版本,看是否稳定 301 到規范地址,最终落地 URL 是什么。
- 回到入口頁,把目标連結统一改成規范寫法,尽量使用完整绝對地址。
- 检查入口頁其他位置,比如頁脚、侧栏、分頁,是否還残留舊寫法的連結。
- 過一段時間看日誌,观察搜尋蜘蛛訪問的 URL 形態是否收敛。
已经混用了,怎么收拾
不需要把入口頁全部推倒重来。新增的連結一律用規范寫法,存量連結按重要性分批替換:指向重点目标頁的優先處理,長尾的可以慢慢来。更根本的一步在目标站侧,用 301 和 canonical 把多個版本收敛到一個地址,入口頁怎么寫都不會造成太大偏差。
统一 URL 寫法只是把發現路径理顺,让搜尋蜘蛛少走弯路。它不等于收錄會立刻改變,抓取、索引、排序本来就是三個不同的环节,別把這一步当成萬能開關。
小结一下:入口頁里的連結寫法,能统一就统一,尤其是协议和主机名這两层。這一步花不了多少時間,却能让後續的抓取日誌好讀很多,排查問题时也少一些干扰項。