當您重新設計網站或更新舊內容時,可能會更改URL結構。而且,如果您不遵循WordPress重定向最佳做法,則可能會對用戶體驗(UX)和搜索引擎優化(SEO)產生負面影響。
核心平台中內置的WordPress重定向功能旨在捕獲錯誤的URL。就是說:當要求輸入錯誤的URL時,WordPress會嘗試找到正確的URL,並會重定向訪問者。
在這篇文章中,我們將說明WordPress重定向的重要性以及它們如何影響頁面速度以及SEO。我們還將討論如何在WordPress中最大程度地減少重定向,並指導您完成各種可用於設置重定向的解決方案。
免費試用
讓我們開始吧!
WordPress重定向簡介
WordPress核心具有重定向功能,旨在幫助捕獲和更正錯誤的URL。如果有人請求了錯誤的URL,WordPress將嘗試找到正確的URL,然後如果成功則重定向訪問者。
假設您有一個頁面位於「 http://www.example.com/parent/page」。通常,如果在瀏覽器中輸入「 http://example.com/page」,則WordPress足夠聰明,可以自動找到正確的頁面以將您重定向到。
不幸的是,這並不總是那麼簡單。如果您將網站設置為使用HTTPS進行解析(以強制將所有流量從HTTP重定向到HTTPS前綴URL),那麼重定向過程將變得更加複雜。
例如,假設訪問者通過在地址欄中鍵入「 http://example.com/page」來嘗試訪問網頁「 https://www.example.com/parent/page」。該過程將如下所示:
- 首先,將訪問者從HTTP重定向到HTTPS。
- 其次,將「 www」添加到URL時,將重定向訪問者。
- 第三,將訪問者重定向到在路徑中包含父頁面的URL公式。
- 最後,伺服器開始將網站的文件和資源發送到訪問者的瀏覽器。
您可能會想:「太好了!我可以屠殺鏈接,但訪問者仍然可以到達他們應有的位置。」從某種意義上說,您應該這樣認為。 WordPress非常擅長弄清楚應該解析URL的位置,這意味著輸入錯誤的URL通常可以正確解析。
但是,所有這些自動重定向也都有缺點。
更改網址結構時,您需要遵循以下重定向最佳做法…否則可能會影響SEO和UX❌?
點擊鳴叫
WordPress如何重定向影響頁面載入速度
一旦意識到WordPress的彈性,就很容易被欺騙而忽略URL格式。如果您手動在內聯鏈接和自定義菜單中鍵入URL,這將特別危險。
沒關係吧?訪客仍然可以使用正確的URL!從理論上講,這是正確的,但您忽略的是重定向對頁面載入速度的影響。
我們來看看WordPress網站的Pingdom頁面速度結果。此測試基於使用正確格式的URL訪問頁面的目的,是為了避免任何重定向:
一點也不差。如果我們查看文件請求,則會發現請求站點時沒有重定向發生:
那麼,如果我們弄亂了該URL並再次運行測試會怎樣?
這將使頁面載入時間增加近100毫秒。儘管這個站點已經足夠快了,看起來似乎沒什麼大不了的,但讓我們看一下文件請求以了解發生了什麼:
現在,URL的前面添加了重定向。重定向後,頁面正常載入。因此,我們可以將頁面速度較慢的原因歸因於將錯誤的URL輸入測試中時發生的重定向。
最重要的是,重定向會損害網頁的載入速度。差異可以是顯著且可測量的。
WordPress重定向如何影響您網站的SEO
如果您對SEO有基本的了解,那麼您可能知道鏈接在其中扮演的重要角色。如果URL鏈接到不再存在的頁面,或者已轉移到另一個已移動的鏈接,則您的訪問者可能會遇到404頁面錯誤:
除了糟糕的用戶體驗之外,從SEO的角度來看,還會出現404「找不到頁面」錯誤,這也可能會傷害您。這些404錯誤是由於鏈接斷開而導致的,這些鏈接斷開會影響搜索引擎抓取您的網站並找到其頁面的能力。
這向搜索引擎發出信號,表明用戶不僅能夠找到他們想要的東西,而且您的網站架構也很糟糕且過時。
因此,必須為URL更改的頁面設置重定向。如果您要將網站移至新域,則可以配置WordPress重定向,這樣搜索引擎抓取工具仍然可以為新網站的URL編製索引,同時從索引中刪除舊的URL。
重定向還可以幫助確保將鏈接汁從您的舊域傳遞到新域並在您自己的頁面中傳遞。不過,請務必注意,只有某些HTTP重定向代碼才能傳遞您在搜索引擎中的排名。
各種類型的URL重定向
作為WordPress用戶,您要處理的最常見的重定向類型(最適合SEO的重定向)是301重定向。這用於已永久移動的內容。
301重定向告訴搜索引擎您想要向訪問者發送的頁面已更改或移動,並在90-99%的鏈接源之間傳遞。在大多數情況下,這種類型的重定向將導致搜索引擎將大部分鏈接源(或頁面許可權)傳遞給新頁面或更新頁面。
伺服器端重定向的其他類型包括:
-
302.此臨時重定向通知搜索引擎頁面正在移動,但不是永久移動。它不會像301重定向那樣傳遞鏈接汁。
-
303.這種類型的臨時重定向用於防止刷新存儲數據的頁面或將其添加書籤(付款表,登錄頁面等)。這樣,用戶在點擊瀏覽器中的「返回」按鈕後就無法重新提交表單。這些重定向不會影響SEO。
-
307. 307重定向類似於303重定向,因為它僅應用於臨時移動的頁面。但是,302重定向通常是首選方法。
-
308. 308重定向是永久重定向,因此它將傳遞鏈接汁和頁面許可權。但是,與以前的重定向一樣,它對SEO的影響也不是很清楚。在大多數情況下,最好使用301。
正如我們所說,以上所有內容均被視為伺服器端重定向。
還有客戶端重定向,這些重定向是在用戶的瀏覽器處理轉發或重定向時觸發的。但是,這些都不可靠,應避免使用。
伺服器端重定向是確保搜索引擎可以快速理解重定向並適當地傳輸SEO汁的最佳方法。
要重定向還是不重定向?
重定向存在是有原因的。它們使您可以將訪問者從過時的內容和不存在的URL發送到更新的內容。我們已經在一定程度上涵蓋了不存在的URL角度。 WordPress自行完成其中的一些操作。
但是,WordPress無法捕獲所有內容,並且有時需要手動重定向規則。
例如,假設您在WordPress 3.0發布時寫了一篇題為「 WordPress的新功能」的文章。早在2010年,這是一篇不錯的文章,但在2020年尋找「 WordPress的新功能」的搜索者需要更新的信息。您想讓那些讀者感到高興,所以您撰寫了一篇有關即將發布的WordPress版本中包含的功能的新文章。
在這種情況下,從舊帖子到新帖子的重定向是完全可以接受和適當的。此外,在這種情況下,重定向是一種很好的SEO做法。歸因於舊帖子的鏈接鏈接將被傳遞到您的新帖子,從而使其在搜索引擎中立即具有分量。
有幾種適合進行重定向的方案,包括:
- 您已經發布了更新的內容,並希望使訪問者遠離舊版本。
- 您已經對網站的永久鏈接結構進行了大修,並且需要將舊的URL重定向到新的URL。
- 您正在更新已發布的頁面或帖子,並希望在進行更新時將流量暫時重定向到其他帖子或頁面。
何時不重定向
在上述所有情況下,都必須進行重定向才能將訪問者從過時的內容和損壞的URL發送到更新的內容。在更新特定內容時,它們也可以作為臨時措施使用。
因此,什麼時候不適合使用WordPress重定向?例如,如果您使用不包含「 www」的URL構建了一個自定義菜單,但是您的網站URL確實使用URL前面的「 www」子域進行了解析,那麼您就錯了。
在這種情況下使用重定向是不合適的,並且會損害您網站的速度和SEO。
如何在WordPress中最小化重定向
如果您對最小化WordPress中的重定向的想法很感興趣,則需要做兩件事。
1.切勿創建不必要的重定向
要記住的第一件事是永遠不要故意創建不必要的重定向。例如,構建內部鏈接和菜單時,您不應該創建重定向。
如果您習慣於懶惰地鍵入URL的習慣,則最好重新考慮您的工作方式。相反,在創建URL時,請確保您:
- 使用正確的協議前綴(HTTP或HTTPS)。
- 根據需要包括或排除「 www」子域。
- 不要在鏈接中使用帖子和頁面ID。
- 包括頁面或帖子的完整路徑。
如果您不小心創建了錯誤的URL,則WordPress內置的重定向功能應該是一種備用。一般來說,對於惰性網址編寫來說,這不是一個非常可靠的解決方案。
2.確保您的頂級域(TLD)只需不超過一個重定向即可解析
為了最大程度地減少WordPress重定向的發生,您可以做的第二件事是確保您的頂級域(TLD)可以通過不超過一個重定向進行解析。您的目標是確保訪問者在TLD之前拋出的協議前綴和子域的任何組合,都可以通過一個或更少的重定向來訪問正確的URL。
讓我們看一個例子。以下所有URL都應使用不超過一個重定向的方式解析到TLD,並且其中之一應不進行重定向而解析:
- http://example.com
- http://www.example.com
- https://example.com
- https://www.example.com
如果您不確定使用協議前綴和子域的這些不同組合來解析站點的URL需要進行多少次重定向,則可以使用Patrick Sexton的重定向映射器進行檢查:
以下是使用此重定向映射器可以輕鬆發現未正確設置的重定向的示例:
您會看到在域的「 www」版本中發生重複的重定向。相反,這是正確設置重定向的示例:
如您所見,「 www」和「 no www」都只發生一次重定向。
如果您確實發現其中某些組合無法解析(返回404伺服器狀態代碼)或需要多個重定向才能解析,那麼該開始工作了。
在伺服器級別設置重定向
設置WordPress重定向的一種方法是向伺服器添加一個或多個重定向規則。這樣可以確保訪問者儘快以您網站網址的正確格式登錄。
您要實現的基本目標是創建重定向規則,該規則針對需要多個重定向的所有URL公式。您要強制這些URL直接解析為格式正確的URL。
例如,如果URL「 http://example.com」需要兩次重定向才能到達「 https://www.example.com」,則可以創建一個手動重定向,使一步操作就可以實現(而不是兩個步驟) )。
Apache中的重定向規則
如果您的網站託管在標準LAMP堆棧上,則需要將URL重寫規則添加到網站的.htaccess文件中。通過Web伺服器配置文件設置WordPress重定向是一個技術過程,可能會很複雜。
因此,僅在您願意編輯.htaccess文件時才使用此方法。即使您是個好主意,也要先創建文件備份。
然後,第一步是使用FTP客戶端或託管cPanel的文件管理器連接到WordPress安裝。您可以在WordPress網站的根目錄中找到.htaccess文件。
要設置301重定向,您需要使用如下語法結構指定新舊網址位置:
重定向301「舊頁面」「新頁面」
如果要將網站的所有流量從HTTP重定向到HTTPS,可以使用以下方法:
RewriteEngine開
RewriteCond!{HTTPS}關閉
RewriteRule ^(。*)$ https://www.% {HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond%{HTTP_HOST}!^ www 。
RewriteRule ^(。*)$ https://www.% {HTTP_HOST}%{REQUEST_URI} [L,R=301]
請記住,在執行此操作之前,重要的是要確保在新的WordPress網站上正確配置了SSL證書。
Nginx中的重定向規則
如果您使用的是更高級的託管配置,則很有可能由Nginx而非Apache提供支持。在這種情況下,事情就不那麼簡單了。
如果您是Kinsta用戶,請隨時跳到下一部分。
重定向配置會因一台主機而異,因此您需要與主機支持聯繫以解決重定向問題。
但是,如果您對自己的能力充滿信心,則可以使用以下代碼通過為要重定向的內容創建伺服器塊來在Nginx中創建重定向:
伺服器{
聽80;
server_name domain1.com;
返回301 $ scheme://domain2.com$request_uri;
}
在上述指令中,「 return」用於URL替換。它返回在重定向URL中指定的狀態代碼。 「 $ scheme」變數使用原始http / https請求中的方案,並返回帶有新URL的301重定向代碼。
另一種選擇是使用:
永久重寫^ / $ http://www.domain2.com;
重寫^ /(。*)$ http://www.domain2.com/$1永久;
這可用於創建永久重定向。有關更多詳細信息,您可以查看F5 Network關於創建Nginx重寫規則的指南。
MyKinsta中的重定向規則
如果您的站點由Kinsta託管,則設置重定向很容易。您可以使用MyKinsta中的重定向規則工具來創建301和302重定向。
登錄MyKinsta後,單擊您的站點並轉到Redirects,然後單擊Add Redirect Rule:
接下來,在「添加重定向規則」屏幕上,您可以選擇要為其添加重定向的域前綴。通常,您需要同時重定向www和非www流量,在這種情況下,您將選擇「所有域」:
清除後,您需要填寫「重定向自」和「重定向至」欄位。
在HTTP狀態代碼下,您可以輕鬆選擇要使用的重定向規則類型:301或302。對選擇滿意後,單擊「添加重定向規則」。
請記住,由於我們的重定向工具會自動使用正則表達式,因此您應在每個「 from」路徑之前添加「 ^」。這將阻止它與其他URL創建重定向循環。儘管此工具非常簡單,但是如果您有任何疑問或需要幫助,您始終可以與支持聯繫。
在MyKinsta中添加重定向意味著規則是在伺服器級別實現的,這是最佳方法。但是,還有WordPress插件,您可以通過它們實現WordPress網站的重定向。
在仔細研究重定向插件之前,需要注意的是,使用重定向插件有時會導致性能問題。它們中的大多數都使用wp_redirect函數,該函數需要額外的代碼執行和資源。
使用插件創建WordPress重定向
如果您的主機沒有重定向規則功能,則可能必須使用WordPress插件。有許多重定向插件可用,重定向是您可以使用的最受歡迎的插件之一:
該插件非常易於使用,可以設置為使用WordPress代碼,Apache伺服器上的.htaccess或Nginx伺服器重定向來創建重定向。另外,它是免費的。
以下是重定向插件的入門方法。
從插件目錄下載後,可以通過轉到工具>重定向找到它:
這將帶您進入歡迎頁面。單擊“開始設置”按鈕,然後按照一系列提示進行操作。完成後,您就可以開始使用它了。
如何手動添加新的重定向
您可以通過單擊添加新按鈕來手動添加新的重定向,然後將源URL和目標URL輸入到相應的表單欄位中並單擊添加重定向按鈕:
僅當您只有幾個URL要重定向時才建議使用此方法。如果您要處理整個網站的價值,建議您使用插件的URL導入功能來節省時間。
導入/導出重定向
您可以使用此插件的另一種有用的方法是導入和導出重定向。例如,您可以從網站中導出舊的URL,然後在新網站上使用該插件導入列表。
為此,請在舊網站上安裝並激活重定向插件。接下來,從您的WordPress管理控制台中,轉到「工具」>「重定向」>「導入/導出」。
在屏幕底部的導出下,您可以將所有內容導出到CSV,Apache .htaccess,Nginx重寫規則或重定向JSON文件:
然後,在新站點上安裝了插件之後,您可以轉到同一屏幕以導入文件:
點擊添加文件按鈕並選擇文件。上傳後,您可以在“重定向”選項卡下找到列出的新URL。
其他WordPress重定向插件
這不是您可以使用的唯一WordPress重定向插件。 301重定向是另一個流行的插件,正在尋找配置選項的購物清單的用戶將首選它們。有效安裝量超過80,000,它已經過了良好的測試。它易於學習,具有精心設計的界面,可用於手動創建301和302重定向。
一個特別好的功能是一個下拉菜單,用於選擇頁面,帖子,媒體頁面和存檔頁面作為重定向目標。這樣可以確保手動創建的重定向規則能夠順利解決。您還可以保留跨重定向的查詢字元串。
了解減少WordPress重定向所需的一切…以及正確實施WordPress的所有最佳做法?
點擊鳴叫
摘要
簡單明了:如果實施不當,WordPress重定向會降低您的網站速度。這就是為什麼值得花些時間來減少重定向次數。
為此,您可以避免創建不必要的重定向,並確保您的TLD最多可以解析一個重定向。
但是,有時候應該適當地故意創建和使用重定向。在這種情況下,有兩種解決方法:
- 您可以在伺服器級別設置重定向。一些託管服務提供商提供可以提供幫助的功能,例如Kinsta上的重定向規則工具。
- 使用諸如重定向之類的WordPress插件手動添加一些重定向或導入URL重定向列表。
通過將重定向限制為必要的實例並使用WordPress重定向最佳做法,可以幫助確保訪問者獲得最快的體驗,並且轉換率不會下降。
另外,您不必擔心會損害SEO並失去排名!
您的想法是:由於重定向過多,您是否遇到性能問題?在下面的評論部分讓我們知道!
如果您喜歡這篇文章,那麼您會喜歡Kinsta的WordPress託管平台。加速您的網站,並從我們經驗豐富的WordPress團隊獲得24/7支持。我們基於Google Cloud的基礎架構專註於自動擴展,性能和安全性。讓我們向您展示Kinsta的與眾不同!查看我們的計劃