Home >> Blog >> 如何修復 HTTP 302 錯誤(5 種方法)

如何修復 HTTP 302 錯誤(5 種方法)

如何修復 HTTP 302 錯誤(5 種方法)

HTTP 302 代碼是一種將網站用戶臨時重定向到不同 URL 的有價值的方法。但是,如果您的網站錯誤地提供了 302 重定向,則表明存在問題。

別擔心——你可以解決這個問題——但你需要做一些故障排除。

第一步是準確了解 HTTP 302 代碼是什麼、它們的工作原理以及它們出現的原因。一旦你知道了這一點,你就可以弄清楚哪裡出了問題以及如何改正它。

在本文中,我們將告訴您有關 HTTP 302 錯誤的所有信息。然後我們將分享五個故障排除技巧來幫助您修復它們。

讓我們開始吧!

查看我們的 302 HTTP 狀態代碼視頻指南

什麼是 HTTP 302 狀態代碼?

302 代碼是一種特定類型的HTTP 狀態代碼。這些代碼就像服務器發送給您的瀏覽器的“註釋”。

每當您單擊鏈接或導航到 URL時,您的瀏覽器都會向網絡服務器請求相同的內容。作為回報,服務器會發回相關資源(例如您嘗試訪問的頁面)以及 HTTP 標頭。HTTP 狀態代碼在該標頭內。

通常,您無法在網頁的任何位置看到這些狀態代碼。您通常只會在發生錯誤時看到它們,或者如果您安裝了使它們可見的瀏覽器擴展:

如何修復 HTTP 302 錯誤(5 種方法)

3xx 狀態代碼(301、302 等)是一類稱為“重定向代碼”的狀態代碼。只要服務器發回新資源而不是請求的資源,它們就會返回。

換句話說,當您打算訪問的網站頁面將您重定向到另一個頁面時,它們就會顯示出來。

代碼 301 和代碼 302 之間的關鍵區別在於前者用於永久重定向,而後者用於臨時重定向。

301 重定向也傳遞“鏈接汁”,而 302 則不傳遞。這對搜索引擎優化 (SEO)有重大影響。

302 重定向如何工作

當您為網站上暫時不可用的頁面設置 302 重定向時,當用戶訪問該頁面時,您的網絡服務器將使用特殊的Location 標頭響應訪問者的瀏覽器。此標頭將指示瀏覽器應將用戶重定向到的新 URL。

例如,假設用戶在瀏覽器 URL 欄中鍵入blog.example.com,但網站配置為將其重定向到blogging.example.com。

服務器響應將包括 302 狀態代碼和Location: blogging.example.com標頭。此設置告訴用戶的瀏覽器將此請求重定向到新的 URL。

當然,所有這些都是在幕後自動發生的。用戶不應該能夠看到任何這些播放。相反,他們的瀏覽器應該自動將他們帶到新資源。

為什麼會發生 HTTP 302 錯誤

如果您的網站配置有誤,可能會導致錯誤發出 302 代碼。如果發生這種情況,您可能會遇到以下問題:

  • 您網站上的一個頁面,在不應該將訪問者重定向到其他地方
  • 您網站上的一個頁面將您的訪問者重定向到錯誤的資源
  • ERR_TOO_MANY_REDIRECTS錯誤(也稱為“重定向循環”)

這些問題中的最後一個是唯一會顯示實際錯誤頁面的問題。如果您使用的是 Chrome 瀏覽器,重定向循環錯誤頁面將如下所示:

如何修復 HTTP 302 錯誤(5 種方法)

在 Mozilla Firefox 上,它看起來像這樣:

如何修復 HTTP 302 錯誤(5 種方法)

以上所有問題都是由於某些錯誤配置引起的。這可能是插件衝突、不正確的URL 設置或錯誤配置的.htaccess文件。

如何修復 HTTP 302 錯誤(5 種方法)

接下來,我們將向您介紹五種故障排除方法,這些方法可以幫助您找出導致問題的原因並加以解決。

在我們開始之前,請確保先對您的網站進行完整備份。這樣,如果出現任何問題,您可以隨時恢復到以前的版本。您可以使用 WordPress 插件來執行此操作。

1. 判斷重定向是否有效

302 響應通常不是錯誤。暫時將用戶重定向到不同的頁面可能是一個有效的配置,通常不需要修復。

如果您的網站使用不應發出的 302 代碼進行響應,或者如果它導致重定向循環,則這只是一個錯誤。因此,第一步是仔細檢查哪些 URL 正在生成 HTTP 302 代碼,並確定重定向是否合適。

為此,您可以導航到您懷疑發出 302 錯誤的網站頁面,並親自查看它們是否按預期運行。如果暫時不可用的頁面重定向到正確的資源,則說明它已正確配置。

但是,如果頁面將您重定向到錯誤的資源,或者您的瀏覽器通過顯示 ERR_TOO_MANY_REDIRECTS 錯誤頁面來報告重定向循環,則表明您的一個(或多個)重定向配置不正確。

2. 檢查你的插件

302 錯誤和重定向循環的最常見原因之一是插件。

一些WordPress 重定向管理器插件和 SEO 工具(如Yoast SEO)為您管理您的網站重定向,並使您能夠設置重定向規則:

如何修復 HTTP 302 錯誤(5 種方法)

如果這些規則配置錯誤,或者兩個插件發生衝突,可能會導致意外問題。因此,您需要檢查站點上安裝的每個相關工具。

例如,如果您使用的是流行的301 重定向WordPress 插件,您可以通過導航到設置> 301 重定向來檢查配置。在Redirect Rules下,您會看到已設置的所有重定向規則的列表:

如何修復 HTTP 302 錯誤(5 種方法)

檢查此處列出的所有 302 重定向,並確保它們都是正確的。

您還需要確保沒有以可能導致重定向循環的方式設置任何內容。例如,如果Page-A設置為重定向到Page-B,但Page-B也設置為重定向到Page-A,這將導致錯誤。

如果您有多個重定向管理器插件並且您不確定是哪個引起了問題,您可以嘗試從 WordPress插件頁面一個一個地停用它們(請務必先進行備份):

如何修復 HTTP 302 錯誤(5 種方法)

停用每個插件後,嘗試重新訪問問題 URL 以查看 302 錯誤是否仍然存在。

如果問題突然得到解決,您就會知道是哪個插件導致了問題,然後您可以選擇進一步排除故障或將其從您的站點中刪除。

3. 確保您的 WordPress URL 設置配置正確

HTTP 302 錯誤的另一個常見原因是 WordPress URL 設置中的錯誤配置。

要檢查這一點,請導航到WordPress 儀表板中的設置>常規。在這裡,您應該看到一個WordPress 地址 (URL)字段和一個站點地址 (URL)字段:

如何修復 HTTP 302 錯誤(5 種方法)

在大多數情況下,這兩個字段中的 URL 應該匹配。確保它們相同,包括域名前的“www”部分(或沒有)。

與我們世界一流的支持團隊一起體驗卓越的 WordPress 託管支持!與支持我們財富 500 強客戶的同一個團隊聊天。查看我們的計劃

如果它們不匹配,請更新設置,然後檢查發出 HTTP 302 錯誤的頁面的 URL 以查看它是否已修復。

4. 檢查你的服務器配置

錯誤配置的服務器有時也會導致 302 重定向錯誤。因此,下一步是檢查您的服務器配置。

如果您的主機使用Apache 網絡服務器,您可以通過檢查.htaccess文件來執行此操作。

信息

此步驟不適用於託管在Nginx 服務器上的網站。如果您的主機像 Kinsta 一樣使用 Nginx 服務器,您可以繼續進行下一個故障排除步驟。

首先,通過控制面板(如cPanel或FTP 客戶端)連接到您站點的服務器。然後導航到您站點的根目錄——與wp-admin和wp-content文件夾相同的位置——並找到.htaccess文件:

如何修復 HTTP 302 錯誤(5 種方法)

如果您在這裡找不到.htaccess文件(並且您確定在 Apache 服務器上),您可能需要告訴 FileZilla 顯示隱藏文件,然後它才會出現在文件列表中。

接下來,在您喜歡的文本編輯器中打開該文件。它應該看起來像這樣:

如何修復 HTTP 302 錯誤(5 種方法)

現在,我們要查找RewriteXXX指令(上面突出顯示的元素)。不用太技術化,RewriteCond指令RewriteRule用於執行從一個 URL 到另一個 URL 的重定向。

該RewriteCond指令指定要將訪問者重定向離開的URL,而 RewriteRule 指令指定要將訪問者重定向到的URL。這是一個例子:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^website.com$
RewriteRule ^(.*)$ http://www.temporary-website.com/$1 [R=302]

最後的標誌“[R=302]”告訴瀏覽器這是一個臨時的 302 重定向。

如果您發現.htaccess文件中有任何與上述類似的 RewriteXXX 組合不應該存在,您可以將它們註釋掉,保存更改,然後重新加載問題網頁以查看它是否解決了問題。

只需確保在進行任何更改之前下載並保存.htaccess文件的備用副本,以防出現問題。

5. 與您的網站託管商交談

如果您已經嘗試了上述所有方法但仍然遇到問題,下一步就是與您的網絡託管服務商聯繫。

解決超出這一點的 302 代碼錯誤需要大量的技術訣竅。因此,除非您是專業開發人員,否則最好從專家那裡獲得幫助。

在 Kinsta,我們認真對待支持。我們的專家團隊隨時準備幫助您解決此類問題:

https://kinsta.com/wp-content/uploads/2021/10/kinsta-support-page.png

我們全天候 24/7 可用。您所要做的就是登錄您的 MyKinsta 帳戶並通過實時聊天與我們聯繫,以便與可以實時提供幫助的支持工程師聯繫。

概括

HTTP 302 狀態代碼是重定向網站訪問者的一種完全正常的方式。但是,它們應該只在資源頁面暫時不可用時使用。

假設您的網站錯誤地發出 302 代碼或導致重定向循環。在這種情況下,盡快解決此問題至關重要,否則它可能會對您的SEO和轉化產生負面影響。

您可以按照以下五個步驟修復網站上的 HTTP 302 錯誤:

  1. 通過檢查發出 302 重定向的 URL 來確定重定向是否合適。
  2. 檢查您的插件以確保任何重定向設置都有效。
  3. 確保您的 WordPress URL 設置配置正確。
  4. 通過在.htaccessRewriteXXX文件中查找不正確的指令來檢查您的服務器配置(僅限 Apache 服務器)。
  5. 如果問題仍然存在,請聯繫您的虛擬主機以獲得進一步的技術支持。

您對 HTTP 302 錯誤還有什麼疑問嗎?請在評價部分留下您的意見。

通過以下方式節省時間、成本並最大限度地提高站點性能:

  • WordPress 託管專家的即時幫助,24/7。
  • Cloudflare 企業集成。
  • 全球觀眾覆蓋全球 35 個數據中心。
  • 使用我們內置的應用程序性能監控進行優化。

所有這些以及更多,都在一個沒有長期合同、協助遷移和 30 天退款保證的計劃中。查看我們的計劃或與銷售人員交談以找到適合您的計劃。