WordPress重定向最佳實踐以最大化SEO和頁面速度

WordPress重定向最佳實踐以最大化SEO和頁面速度

當您重新設計網站或更新舊內容時,可能會更改您的URL結構。如果您不遵循WordPress重定向最佳實踐,您可能會對使用者體驗 (UX) 和搜尋引擎優化 (SEO)產生負面影響。

核心平臺內建的WordPress重定向功能旨在捕獲不正確的URL。也就是說:當請求錯誤的URL時,WordPress會嘗試找到正確的URL,如果找到,則會重定向訪問者。

在這篇文章中,我們將解釋WordPress重定向的重要性以及它們如何影響頁面速度,當然還有SEO。我們還將討論如何最大限度地減少WordPress中的重定向,並指導您完成可用於設定它們的各種解決方案。

  1. WordPress重定向簡介
  2. WordPress重定向如何影響頁面載入速度
  3. WordPress重定向如何影響您網站的SEO
  4. 重定向還是不重定向?
  5. 如何在WordPress中最小化重定向
  6. 在伺服器級別設定重定向
  7. 使用外掛建立WordPress重定向
  8. 其他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通常會正確解析。

然而,所有這些自動重定向也有一個缺點。

WordPress重定向如何影響頁面載入速度

一旦您意識到WordPress的彈性,很容易被欺騙而忽略URL公式。如果您手動輸入內聯連結和自定義選單中的 URL,這尤其危險。

這沒什麼大不了的,對吧?訪問者仍然會訪問正確的 URL!雖然這在理論上是正確的,但您忽略的是重定向對頁面載入速度的影響

讓我們看一下WordPress網站的Pingdom頁面速度結果。此測試基於使用格式正確的URL訪問頁面,以避免任何重定向:

具有正確格式URL的Pingdom測試結果

具有正確格式URL的Pingdom測試結果

這一點也不壞。如果我們檢視檔案請求,我們會看到請求站點時沒有發生重定向:

來自Pingdom的檔案請求

來自Pingdom的檔案請求

那麼如果我們弄亂了那個URL並再次執行測試會發生什麼呢?

帶有錯誤URL的Pingdom測試結果

帶有錯誤URL的Pingdom測試結果

這使頁面載入時間增加了近100毫秒。雖然這看起來沒什麼大不了的,因為這個站點已經足夠快了,讓我們看看檔案請求,看看發生了什麼:

錯誤的URL檔案請求

錯誤的URL檔案請求

現在在URL的前面新增了一個重定向。重定向後,頁面正常載入。因此,我們可以將較慢的頁面速度歸因於在將不正確的URL輸入測試時發生的重定向。

底線是重定向會損害網頁載入速度。差異可能是顯著且可衡量的。

WordPress重定向如何影響您網站的SEO

如果您對SEO有基本的瞭解,您可能知道連結在其中扮演的重要角色。如果一個URL連結到一個不再存在的頁面,或者被轉移到另一個被移動的連結,您的訪問者可能會遇到404頁面錯誤

Chrome中的404錯誤頁面

Chrome中的404錯誤頁面

除了糟糕的使用者體驗之外,從SEO的角度來看,404“找不到頁面”錯誤也會對您造成傷害。這些404錯誤是連結斷開的結果,這會影響搜尋引擎抓取您的網站並定位其頁面的能力。

這向搜尋引擎發出訊號,表明使用者不僅能夠找到他們正在尋找的內容,而且您的網站架構也很差且過時。

因此,必須為URL已更改的頁面設定重定向。如果您要將站點移動到新域,配置WordPress重定向可以使搜尋引擎爬蟲仍然能夠索引新站點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年的一篇很棒的帖子,但在2022年尋找“WordPress中的新功能”的搜尋者想要更新的資訊。您想讓這些讀者滿意,因此您寫了一篇關於即將釋出的WordPress版本中包含的功能的新文章。

在這種情況下,從舊帖子重定向到新帖子是完全可以接受和適當的。此外,在這種情況下,重定向是良好的SEO做法。歸因於舊文章的連結權重將被傳遞給您的新文章,從而在搜尋引擎中立即獲得權重。

有幾種適合重定向的場景,包括:

  • 您釋出了更新的內容,並希望引導訪問者遠離舊版本。
  • 您已經徹底檢查了網站的固定連結結構,需要將舊URL重定向到新結構。
  • 您正在更新已釋出的頁面或文章,並希望在進行更新時臨時將流量重定向到不同的文章或頁面。

何時不重定向

在上述所有場景中,重定向都是必要的,以便將訪問者從過時的內容和損壞的URL引導到更新的內容。在更新特定內容時,它們也很方便作為臨時措施。

那麼,什麼時候適合使用WordPress重定向?例如,如果您使用不包含“www”的URL構建了一個自定義選單,但您的站點URL確實使用URL前面的“www”子域解析,那麼您就犯了一個錯誤。

在這種情況下使用重定向是不合適的,並且會損害您網站的速度和SEO。

如何在WordPress中最小化重定向

如果您對在WordPress中最小化重定向的想法感到滿意,那麼您需要做兩件重要的事情。

1.永遠不要建立不必要的重定向

首先要記住的是永遠不要故意建立不必要的重定向。例如,您不應該在構建內部連結和選單時建立重定向。

如果您養成了懶惰輸入URL的習慣,最好重新考慮您的工作方式。相反,當您建立URL時,請確保您:

  • 使用正確的協議字首(HTTP 或 HTTPS)。
  • 酌情包括或排除“www”子域。
  • 不要在連結中使用文章和頁面ID。
  • 包括頁面或帖子的整個路徑。

WordPress內建的重定向功能應該是一種備用功能,以防您不小心建立了錯誤的URL。一般來說,對於懶惰的URL編寫來說,這不是一個非常可靠的修復方法。

2. 確保您的頂級域 (TLD) 僅通過一次重定向即可解析

為儘量減少WordPress重定向的發生,您可以做的第二件事是確保您的頂級域 (TLD) 解析時不超過一個重定向。您的目標是確保通過一次或更少的重定向到達正確的URL,無論訪問者在TLD前丟擲何種協議字首和子域組合。

讓我們看一個例子。以下所有URL應解析到TLD且不超過一個重定向,其中一個URL應解析為不重定向:

  • 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。

例如,如果URL“http://example.com”需要兩次重定向才能到達“https://www.example.com”,您可以建立一個手動重定向,一步完成(而不是兩個)。

Apache中的重定向規則

如果您的站點託管在標準LAMP堆疊上,則需要將URL重寫規則新增到站點的.htaccess 檔案中。通過Web伺服器配置檔案設定WordPress重定向是一個技術過程,並且可能很複雜。

因此,僅當您對編輯 .htaccess檔案感到滿意時才使用此方法。即使您是,首先建立檔案的備份仍然是一個好主意。

然後,第一步是使用FTP客戶端或通過託管cPanel 的檔案管理器連線到您的WordPress安裝。您可以在WordPress站點的根目錄中找到 .htaccess 檔案。

要設定301重定向,您需要使用如下所示的語法結構指定新舊URL位置:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
Redirect 301 "old-page" "new-page"
Redirect 301 "old-page" "new-page"
Redirect 301 "old-page" "new-page"

如果要將站點的所有流量從HTTP重定向到HTTPS,可以使用以下命令:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond !{HTTPS} off
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>
<IfModule mod_rewrite.c> RewriteEngine On RewriteCond !{HTTPS} off RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] </IfModule>
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond !{HTTPS} off
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
</IfModule>

請記住,在執行此操作之前,請務必確保您 在新的WordPress網站上正確配置了SSL證書

Nginx中的重定向規則

如果您使用的是更高階的託管配置,那麼它很有可能由Nginx而不是Apache提供支援。在那種情況下,事情就沒有那麼簡單了。

重定向配置因一臺主機而異,您需要聯絡主機支援以解決重定向問題。

但是,如果您對自己的能力有信心,您可以使用以下程式碼在Nginx中通過為要重定向的內容建立伺服器塊來建立重定向:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
server {
listen 80;
server_name domain1.com;
return 301 $scheme://domain2.com$request_uri;
}
server { listen 80; server_name domain1.com; return 301 $scheme://domain2.com$request_uri; }
server {
listen 80;
server_name domain1.com;
return 301 $scheme://domain2.com$request_uri;
}

在上述指令中,“return”用於URL替換。它返回重定向URL中指定的狀態程式碼。“$scheme”變數使用原始http/https請求中的方案並返回帶有新URL的301重定向程式碼。

另一種選擇是使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
rewrite ^/$ http://www.domain2.com permanent;
rewrite ^/(.*)$ http://www.domain2.com/$1 permanent;
rewrite ^/$ http://www.domain2.com permanent; rewrite ^/(.*)$ http://www.domain2.com/$1 permanent;
rewrite ^/$ http://www.domain2.com permanent;
rewrite ^/(.*)$ http://www.domain2.com/$1 permanent;

這可用於建立永久重定向。有關更多詳細資訊,您可以檢視F5 Network關於建立Nginx重寫規則的指南。

但是,也有WordPress外掛,您可以通過它們為WordPress網站實現重定向。

在仔細研究重定向外掛之前,重要的是要注意使用它們有時會導致效能問題。他們中的大多數使用wp_redirect函式,這需要額外的程式碼執行和資源。

使用外掛建立WordPress重定向

如果您的主機沒有重定向規則功能,您可能必須使用WordPress外掛。有許多可用的重定向外掛,Redirection是您可以使用的最受歡迎的外掛之一:

WordPress外掛-Redirection

WordPress外掛-Redirection

這個外掛非常易於使用,可以設定為使用WordPress程式碼、 Apache伺服器上的.htaccess或Nginx伺服器重定向來建立重定向。另外,它是免費的。

以下是如何開始使用重定向外掛。

從外掛目錄下載後,您可以通過工具 > Redirection找到它:

WordPress外掛Redirection歡迎頁面

WordPress外掛Redirection歡迎頁面

這將帶您進入歡迎頁面。單擊“Start Setup” 按鈕,然後按照一系列提示進行操作。完成後,您就可以開始使用它了。 

如何手動新增新的重定向

您可以通過單擊“Add New ”按鈕手動新增新的重定向,然後將源URL和目標URL輸入到相應的表單欄位中,然後單擊“Add Redirect ”按鈕:

Redirection外掛中的新增新重定向介面

Redirection外掛中的新增新重定向介面

僅當您只有幾個URL需要重定向時,才建議使用此方法。如果您要處理整個網站的價值,我們鼓勵您使用外掛的URL匯入功能來節省時間。

匯入/匯出重定向

您可以使用此外掛的另一種有用方法是匯入和匯出重定向。例如,您可以從您的網站匯出舊URL,然後在新站點上使用外掛來匯入列表。

為此,請在舊網站上安裝並啟用重定向外掛。接下來,從您的WordPress管理儀表盤轉到工具 > Redirection > Import/Export。

在螢幕底部的Export下,您可以將所有內容匯出到CSV、Apache .htaccess、Nginx重寫規則或重定向JSON檔案:

WordPress外掛Redirection的“匯出”部分

WordPress外掛Redirection的“匯出”部分

然後,在您的新站點上安裝外掛後,您可以轉到同一螢幕匯入檔案:

Redirection外掛中的匯入/匯出介面

Redirection外掛中的匯入/匯出介面

單擊Add File按鈕並選擇檔案。上傳後,您可以在“Redirects” 選項卡下找到列出的新URL。

其他WordPress重定向外掛

這不是您可以使用的唯一WordPress重定向外掛。  301 Redirects是另一個流行的外掛,使用者在尋找配置選項的購物清單時會首選它。擁有超過80,000次活躍安裝,它肯定已經過良好測試。它易於學習,具有精心設計的介面,可用於手動建立301和302重定向。

一個特別好的功能是用於選擇頁面、文章、媒體頁面和存檔頁面作為重定向目標的下拉選單。這可確保手動建立的重定向規則可以毫無問題地解決。您還可以跨重定向保留查詢字串。

小結

簡單明瞭:如果實施不當,WordPress重定向可能會降低您的網站速度。這就是為什麼值得花時間儘量減少重定向次數的原因。

您可以通過避免建立不必要的重定向並確保您的TLD解析不超過一個重定向來做到這一點。

但是,有時故意建立和使用重定向是合適的。在這種情況下,有兩種方法可以解決:

  • 您可以在伺服器級別設定重定向。
  • 使用WordPress外掛(例如 Redirection)手動新增一些重定向或匯入URL重定向列表。

通過將重定向的使用限制在必要的例項上並使用WordPress重定向最佳實踐,您可以幫助確保訪問者獲得儘可能快的體驗,並且您的轉化率不會下降

另外,您不必擔心會損害您的SEO並失去排名!

評論留言