大多數(shù)網(wǎng)站所有者必須在某一時刻處理重定向。當(dāng)您重塑品牌、合并多個網(wǎng)站、刪除頁面或只是將頁面移動到新位置時,重定向有助于讓用戶和搜索引擎可以訪問內(nèi)容。然而,重定向的世界是一個模糊的世界,因為不同的場景存在不同類型的重定向。因此,了解它們之間的差異很重要。
什么是重定向?
重定向(Redirects)是一種將用戶(和機器人)轉(zhuǎn)發(fā)到他們請求的URL之外的URL的方法。
為什么要使用重定向?
移動內(nèi)容時應(yīng)使用重定向的原因有兩個:
·為訪問者提供更好的用戶體驗–您不希望訪問者在嘗試訪問移動的頁面時收到“找不到頁面”警告。重定向通過無縫地將訪問者發(fā)送到內(nèi)容的新位置來解決這個問題。
·幫助搜索引擎了解您的網(wǎng)站–重定向告訴搜索引擎內(nèi)容已移動到何處以及移動是永久的還是臨時的。這會影響頁面是否以及如何出現(xiàn)在其搜索結(jié)果中。
什么時候應(yīng)該使用重定向?
當(dāng)您將內(nèi)容從一個URL移動到另一個URL以及偶爾刪除內(nèi)容時,您應(yīng)該使用重定向。讓我們快速瀏覽一下您想要使用它們的一些常見場景。
1.移動域時
如果您要更名并從一個域轉(zhuǎn)移到另一個域,則需要將舊域上的所有頁面永久重定向到它們在新域上的位置。
2.合并網(wǎng)站時
如果您要將多個網(wǎng)站合并為一個,則需要將舊URL永久重定向到新URL。
3.切換到HTTPS時
如果您從HTTP切換到HTTPS(強烈推薦),您需要將每個不安全(HTTP)頁面和資源永久重定向到其安全(HTTPS)位置。
4.進行促銷時
如果您正在進行臨時促銷活動并希望將訪問者從domain.com/laptops發(fā)送到domain.com/laptops-black-friday-deals,則需要使用臨時重定向。
5.刪除頁面時
如果您要從網(wǎng)站中刪除內(nèi)容,則應(yīng)盡可能將其URL永久重定向到相關(guān)的類似頁面。這有助于確保任何指向舊頁面的反向鏈接仍可用于SEO目的。它還確保任何書簽或內(nèi)部鏈接仍然有效。
重定向的類型
重定向分為兩組:服務(wù)器端重定向和客戶端重定向。每個組都包含許多重定向,搜索引擎將這些重定向視為臨時的或永久的。因此,您需要為手頭的任務(wù)使用正確的重定向,以避免潛在的SEO問題。
1.服務(wù)器端重定向
服務(wù)器端重定向是服務(wù)器決定在請求頁面時將用戶或搜索引擎重定向到何處的重定向。它通過返回3XX HTTP狀態(tài)代碼來實現(xiàn)。如果你在做SEO,你大部分時間都會使用服務(wù)器端重定向,因為客戶端重定向(我們將很快討論這些)有一些缺點,并且往往更適合非常具體和罕見的使用案件。以下是每個SEO都應(yīng)該知道的3XX重定向:
301重定向
301重定向?qū)⒂脩艮D(zhuǎn)發(fā)到新URL,并告訴搜索引擎該資源已永久移動。當(dāng)遇到301重定向時,搜索引擎通常會從索引中刪除舊的重定向URL,轉(zhuǎn)而使用新URL。他們還將PageRank(權(quán)限)轉(zhuǎn)移到新URL。
302重定向
302重定向?qū)⒂脩艮D(zhuǎn)發(fā)到新URL,并告訴搜索引擎該資源已臨時移動。當(dāng)遇到302重定向時,搜索引擎會保留舊URL的索引,即使它已被重定向。但是,如果您長時間保留302重定向,搜索引擎可能會開始將其視為301重定向,而是將新URL編入索引。像301s,302s轉(zhuǎn)移PageRank。不同之處在于轉(zhuǎn)移發(fā)生“向后”。換句話說,“新”網(wǎng)址的PageRank向后轉(zhuǎn)移到舊網(wǎng)址(除非搜索引擎將其視為301)。
303重定向
303重定向?qū)⒂脩艮D(zhuǎn)發(fā)到與請求的資源類似的資源,并且是重定向的一種臨時形式。當(dāng)用戶點擊瀏覽器中的“后退”按鈕時,它通常用于防止表單重新提交。您通常不會將303重定向用于SEO目的。如果這樣做,搜索引擎可能會將它們視為301或302。
307重定向
307重定向與302重定向相同,只是它在執(zhí)行重定向時保留了原始請求的HTTP方法(POST、GET)。
308重定向
308重定向與301重定向相同,只是在執(zhí)行重定向時保留了原始請求的HTTP方法。谷歌表示它對待308重定向與301重定向相同,但大多數(shù)SEO仍然使用301重定向。
2.客戶端重定向
客戶端重定向是瀏覽器決定將用戶重定向到何處的重定向。您通常不應(yīng)該使用它,除非您沒有其他選擇。
307重定向
當(dāng)站點使用HSTS時,307重定向通常發(fā)生在客戶端。這是因為HSTS告訴客戶端的瀏覽器,服務(wù)器只接受安全(HTTPS)連接,并在將來被要求從站點請求不安全(HTTP)資源時執(zhí)行內(nèi)部307重定向。
元刷新重定向
元刷新重定向告訴瀏覽器在設(shè)定的秒數(shù)后重定向用戶。Google理解它,并且通常會將其視為301重定向。然而,當(dāng)被問及在Twitter上延遲元重定向時,谷歌的約翰穆勒說,“如果你希望它被視為重定向,那么讓它像重定向一樣有意義。”無論哪種方式,Google都不建議使用它們,因為它們可能會讓用戶感到困惑,并且并非所有瀏覽器都支持。Google建議改用服務(wù)器端301重定向。
JavaScript重定向
正如您可能猜到的那樣,JavaScript重定向使用JavaScript來指示瀏覽器將用戶重定向到不同的URL。有些人認為JS重定向會給搜索引擎帶來問題,因為他們必須渲染頁面才能看到重定向。雖然這是真的,但對于谷歌來說這通常不是問題,因為它現(xiàn)在渲染頁面的速度如此之快。(不過,其他搜索引擎仍然可能存在問題。)總而言之,在可能的情況下使用3XX重定向仍然更好,但如果這是您唯一的選擇,則JS重定向通常很好。
重定向的最佳實踐
重定向可能會變得復(fù)雜。為了幫助您,如果您參與SEO,這里有一些最佳實踐需要牢記。
1.將HTTP重定向到HTTPS
在這個階段,每個人都應(yīng)該使用HTTPS。它為您的網(wǎng)站提供了額外的安全層,并且它是一個小的Google排名因素。無論您使用哪種方法,都值得在幾個頁面上重復(fù)它,這樣您就可以確信在您的網(wǎng)站上進行了正確的重定向。
2.使用HSTS(創(chuàng)建307重定向)
在您的服務(wù)器上實施HSTS(HTTP嚴(yán)格傳輸安全)可阻止人們訪問您網(wǎng)站上的非安全(HTTP)內(nèi)容。它通過告訴瀏覽器你的服務(wù)器只接受安全連接并且他們應(yīng)該做一個內(nèi)部307重定向到他們被要求訪問的任何HTTP資源的HTTPS版本來做到這一點。這不能替代301或302重定向,如果在您的網(wǎng)站上正確設(shè)置了這些重定向,則并非絕對必要。然而,我們認為這是當(dāng)今的最佳實踐——即使只是為了為用戶加快速度。
實施HSTS后,請考慮將您的站點提交到HSTS預(yù)加載列表。這為嘗試訪問您網(wǎng)站的每個人啟用了HSTS——即使他們之前沒有訪問過它。
3.避免元刷新重定向
元刷新重定向并不理想,因此值得檢查您的站點并用301或302重定向替換它們。您可以使用免費的Ahrefs網(wǎng)站管理員工具帳戶輕松完成此操作。只需使用Site Audit抓取您的網(wǎng)站并查找“元刷新重定向”錯誤。如果您隨后單擊錯誤并點擊“查看受影響的URL”,您將看到帶有元刷新重定向的URL。
4.將刪除的頁面重定向到相關(guān)的工作替代品(在可能的情況下)
移動內(nèi)容時重定向URL很有意義,但刪除內(nèi)容時重定向通常也很有意義。這是因為當(dāng)用戶嘗試訪問已刪除的頁面時,看到“404 not found”錯誤并不理想。將他們重定向到相關(guān)的工作替代方案通常對用戶更友好。在設(shè)置爬網(wǎng)時啟用“反向鏈接”作為來源。這將允許站點審計找到帶有反向鏈接的已刪除頁面,即使沒有指向您站點上頁面的內(nèi)部鏈接。
5.避免長重定向鏈
重定向鏈?zhǔn)窃谡埱蟮馁Y源與其最終目的地之間發(fā)生多次重定向時。Google的官方文檔說它最多跟蹤10個重定向躍點,因此任何比這更短的重定向鏈對于SEO來說都不是問題。Googlebot最多跟蹤10個重定向躍點。如果爬蟲在10個躍點內(nèi)沒有收到內(nèi)容,Search Console將在網(wǎng)站的索引覆蓋率報告中顯示重定向錯誤。但是,對于用戶來說,長鏈仍然會減慢速度,因此最好盡可能避免它們。
6.避免重定向循環(huán)
重定向循環(huán)是無限循環(huán)的重定向,當(dāng)URL重定向到自身或重定向鏈中的URL重定向回鏈中較早的URL時,就會發(fā)生這種無限循環(huán)。它們有問題有兩個原因:
·對于用戶——他們切斷了對預(yù)期資源的訪問,并在瀏覽器中觸發(fā)了“重定向過多”錯誤。
·對于搜索引擎-他們“陷阱”爬蟲并浪費爬蟲預(yù)算。
寫在最后
SEO重定向非常簡單。大多數(shù)情況下,您將使用服務(wù)器端301和302重定向,具體取決于重定向是永久的還是臨時的。