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

HTTP 302 代碼是一種將網站用戶臨時重定向到不同 URL 的寶貴方式。但是,如果您的網站錯誤地提供 302 重定向,則表明出現問題。

嘗試免費演示

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

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

在這篇文章中,我們將告訴您有關 HTTP 302 錯誤的所有信息。然後我們將分享五個故障排除提示,以幫助您解決這些問題。

讓我們開始吧!

什麼是 HTTP 302 狀態代碼?

302 代碼是一種特定類型的 HTTP 狀態代碼。這些代碼就像伺服器傳遞給您瀏覽器的「注釋」。

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

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

顯示當前 URL 的 HTTP 狀態代碼的屏幕截圖,通過使用 Chrome 瀏覽器擴展程序顯示。

網頁的 HTTP 狀態代碼,使用 Chrome 瀏覽器擴展程序顯示。

3xx 狀態代碼(301、302 等)是一類稱為「重定向代碼」的狀態代碼。每當伺服器發回新資源而不是請求的資源時,就會返回它們。

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

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

301 重定向也會通過「鏈接汁」,而 302 則不會。這對搜索引擎優化 (SEO) 有重大影響。

😬 現在呢?🤷‍♀️ 從這份詳盡的指南開始 ⤵點擊推文

302 重定向如何工作

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

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

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

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

為什麼會發生 HTTP 302 錯誤

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

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

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

Chrome ERR_TOO_MANY_REDIRECTS 錯誤消息,文本為

Chrome ERR_TOO_MANY_REDIRECTS 錯誤消息。

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

Firefox ERR_TOO_MANY_REDIRECTS 錯誤消息,帶有文本

Firefox ERR_TOO_MANY_REDIRECTS 錯誤消息。

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

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

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

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

1. 確定重定向是否有效

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

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

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

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

2. 檢查你的插件

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

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

Yoast SEO Premium 插件重定向設置頁面。

Yoast SEO Premium 插件重定向設置頁面。

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

訂閱時事通訊

想知道我們是如何將流量增加超過 1000% 的嗎?

加入 20,000 多名其他人,他們會收到我們的每周時事通訊,其中包含 WordPress 內幕技巧!

現在訂閱

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

301 Redirects WordPress 插件的重定向規則設置頁面。

301 Redirects WordPress 插件的重定向規則設置頁面。

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

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

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

WordPress 管理儀錶板中的插件頁面。

WordPress 管理儀錶板中的插件頁面。

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

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

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

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

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

WordPress 中的「常規設置」頁面,帶有突出顯示的地址欄位。

WordPress 中的常規設置頁面。

在大多數情況下,這兩個欄位中的 URL 應該匹配。確保它們是相同的,包括域名前的「www」部分(或缺少)。

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

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

4. 檢查您的伺服器配置

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

如果您的主機使用 Apache 網路伺服器,您可以通過檢查您的 .htaccess 文件來做到這一點。

信息

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

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

在網站的根目錄文件夾中突出顯示的 .htaccess 文件的屏幕截圖。

站點根目錄中的 .htaccess 文件。

如果您在此處找不到 .htaccess 文件(並且您確定在 Apache 伺服器上),您可能需要告訴 FileZilla 在它出現在文件列表中之前顯示隱藏文件。

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

在文本編輯器中打開的 .htaccess 文件的屏幕截圖,代碼中突出顯示了 RewriteXXX 指令。

.htaccess 文件中的 RewriteXXX 指令。

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

RewriteCond 指令指定您要將訪問者重定向到的 URL,而 RewriteRule 指令指定您要將其重定向到的 URL。下面是一個例子:

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

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

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

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

5. 與您的虛擬主機交談

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

對超過這一點的 302 代碼錯誤進行故障排除需要大量的技術知識。因此,除非您是專業開發人員,否則最好向專家尋求幫助。

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

Kinsta 支持頁面的屏幕截圖。

Kinsta 支持頁面。

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

不要讓 HTTP 302 代碼減慢您的工作速度。🙅‍♀️ 通過這 5 個故障排除技巧了解如何解決這些問題💥點擊推文

概括

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

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

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

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

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

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

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

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

相關文章