技術參考

HTTP 回應狀態碼

HTTP 狀態碼是伺服器回應中的三位數訊號。第一位數表示整體結果類別,其餘數字則指出特定狀況。本指南以實務脈絡說明已登錄的標準狀態碼,也介紹可能出現在記錄中的重要服務商專用值。

如何閱讀本目錄: 單一狀態碼不足以完整診斷問題。請一併檢查請求方法、回應標頭、本文、重新導向目標,以及產生回應的伺服器或 Proxy。未識別的值通常仍屬於其首位數所代表的類別,但確切行為可能依實作而異。

瀏覽器相容性與回應處理

HTTP 狀態碼屬於 HTTP 通訊協定的一部分,並非各瀏覽器廠商分別實作的網頁 API。目前的瀏覽器都能處理標準回應類別;實際顯示的錯誤頁面及重試行為則因瀏覽器而異。對較新的中間回應及特殊擴充功能的支援,可能因版本和網路路徑而不同。

回應類別Chrome / EdgeFirefoxSafariOperaAndroid / iOS WebView相容性備註
1xx 資訊性回應支援通訊協定中間回應支援通訊協定中間回應支援通訊協定中間回應支援通訊協定中間回應由底層網路堆疊支援100/101 已廣泛實作;102 較少見且已棄用。103 Early Hints 的採用情況和可觀察到的預載行為會因瀏覽器版本、伺服器及中介系統而異。
2xx 成功支援支援支援支援支援標準成功語意共通,但仍須遵守回應本文規則,例如 204 和 205 不含回應本文。
3xx 重新導向支援支援支援支援支援導覽會受 Location、方法、快取及安全政策影響。301/302 可能將 POST 改為 GET;307/308 會保留方法。
4xx 用戶端/請求錯誤支援支援支援支援支援瀏覽器會收到回應;是否顯示伺服器本文或瀏覽器產生的錯誤畫面,會因狀態碼和產品而異。
5xx 伺服器錯誤支援支援支援支援支援用戶端可處理此回應類別,但 Proxy 產生的頁面、重試行為和診斷介面在各瀏覽器間並不完全相同。
已知類別中的未識別狀態碼依類別處理依類別處理依類別處理依類別處理依類別處理HTTP 用戶端可依第一位數字判斷大致類別;請勿假設自訂狀態碼具有標準語意或在各介面中呈現相同。

此處的相容性指通訊協定層級的處理,不保證每種瀏覽器都顯示相同錯誤頁面。舊版用戶端、內嵌 WebView、Proxy 和入口網站可能另有行為限制。

1xx — 資訊性回應

100

繼續

伺服器已接受請求標頭,正在等待其餘請求本文。此狀態常與 Expect: 100-continue 搭配使用,讓用戶端在請求可能遭拒時避免上傳大型本文。

操作指引: 這是中間回應;只有在預期需要時才繼續傳送本文。

101

切換通訊協定

用戶端要求升級後,伺服器同意變更此連線所使用的通訊協定。WebSocket 握手是常見用途。

操作指引: 這是連線層級的轉換;請確認 Upgrade 和 Connection 標頭。

102

處理中

WebDAV 伺服器回報長時間作業已開始但尚未完成。這是舊版/已棄用的回應,不應將其誤認為最終結果。

操作指引: 這是 WebDAV 中間狀態;請等待最終回應。

103

Early Hints

伺服器在準備最終回應時先送出初步標頭,通常包含 Link 提示。用戶端可據此提前擷取可能重要的資源。

操作指引: 這是中間最佳化訊息;之後仍須收到最終回應。

2xx — 成功回應

200

成功

請求已成功。回應內容依方法而異:GET 會回傳資源,HEAD 會回傳不含本文的中繼資料,寫入操作則可能回傳結果表示。

操作指引: 適用於已完成且需要回傳表示內容的請求。

201

已建立

請求已完成,並建立了一個或多個資源。回應應指出新資源的位置,通常使用 Location,也可以回傳其表示內容。

操作指引: 常見於 POST 或 PUT 之後;請確保能找到新建資源。

202

已接受

伺服器已接受請求並排入處理,但尚未完成,仍可能失敗。HTTP 不會在同一次交換中稍後再傳送第二個回應。

操作指引: 提供作業/狀態 URL 或其他方式,以便查詢最終結果。

203

非權威資訊

轉換 Proxy 或中介系統回傳的中繼資料或內容與原始伺服器回應不同。此狀態表示回應並非直接來自原始伺服器的權威表示。

操作指引: 只有在中介轉換與使用情境有關時才使用。

204

無內容

請求已成功,且不會傳送回應內容。標頭仍可攜帶有用的中繼資料,例如更新後的驗證器。

操作指引: 請勿包含回應本文。

205

重設內容

請求已成功,並指示用戶端重設提交請求的檢視畫面或表單。不會傳送回應內容。

操作指引: 適用於需要清除/重設目前輸入狀態的互動。

206

部分內容

伺服器成功處理有效的範圍請求,只回傳所要求的位元組範圍。Content-Range 會說明實際傳送的內容。

操作指引: 請確認 Range 與 Content-Range 值相符;常見於可續傳的媒體或下載。

207

多重狀態

WebDAV 回應會分別回報多個資源或子作業的結果,通常以結構化 XML 本文呈現。

操作指引: 請逐一判讀每個內嵌資源的結果;外層狀態碼本身並不能代表完整結果。

208

已回報

WebDAV 多重狀態回應會省略同一回應中先前已列出的成員,避免重複。

操作指引: 此狀態為 WebDAV 專用;請結合周圍的多重狀態回應判讀。

226

使用執行個體操作

伺服器使用執行個體操作處理 GET,並依協商好的差異機制回傳由目前資源衍生的表示內容。

操作指引: 此狀態用於特殊差異編碼;用戶端與伺服器必須同意所採用的轉換方式。

3xx — 重新導向與快取驗證

300

多種選擇

目標有多種表示方式或目的地,回應會提供選項。用戶端或使用者可選取偏好的版本。

操作指引: 提供清楚的替代選項;不要假設每個用戶端都會自動選擇。

301

永久移動

資源已永久移至新的 URI。用戶端可能更新儲存的連結和快取,因此僅在確定要永久移動時使用。

操作指引: 進行 SEO 網站遷移時,請直接重新導向至最終的對應 URL,並更新內部連結。

302

找到

資源目前暫時位於其他 URI。依照歷史行為,在某些情況下請求方法可能變更;若必須保留 POST,這不是最安全的選擇。

操作指引: 若暫時移動時允許改寫方法,請使用此狀態;否則可考慮使用 307。

303

另行檢視

用戶端應使用 GET(適當時使用 HEAD)取得 Location 指定的資源,而不是重複原始操作。常用於表單提交之後。

操作指引: 此狀態實作 Post/Redirect/Get 模式,避免重複提交操作。

304

未修改

條件式 GET 或 HEAD 表示快取中的表示內容仍是最新版本。此回應不含本文,讓用戶端重用已儲存的副本。

操作指引: 僅在 If-None-Match 或 If-Modified-Since 等驗證器符合時回傳。

305

使用 Proxy

歷史提案中的回應,建議用戶端透過 Proxy 存取資源。因安全因素已棄用,現代服務不應使用。

操作指引: 不要部署;請在帶外設定 Proxy。

306

未使用

此值在現代 HTTP 規格中保留/未使用。對目前的網頁應用程式沒有標準操作意義。

操作指引: 請勿傳送此狀態碼。

307

暫時重新導向

資源暫時位於另一個 URI;用戶端追蹤重新導向時必須保留原始方法和本文。

操作指引: 暫時移動時若不可將 POST 轉為 GET,請使用此狀態。

308

永久重新導向

資源已永久移至新位置;用戶端追蹤重新導向時必須保留原始方法和本文。

操作指引: 若永久移動時須保留方法,請使用此狀態;並更新 canonical 和內部參照。

4xx — 用戶端/請求錯誤

400

錯誤的請求

伺服器無法處理此請求,因為語法、框架格式或提供的資料無效。原封不動重送相同請求通常無法解決問題。

操作指引: 檢查 URL 編碼、JSON/本文語法、必要欄位及請求框架格式。

401

未經授權

請求缺少目標資源所需的有效驗證憑證。雖然名稱容易誤解,此回應代表需要驗證或驗證失敗。

操作指引: 提供預期的憑證,並包含 WWW-Authenticate 挑戰。

402

需要付款

此狀態保留供未來使用,但部分產品會用於付款或配額流程。目前沒有一套普遍相容的付款處理方式。

操作指引: 將服務商專用的涵義視為特定實作,並記錄 API 契約。

403

禁止存取

伺服器理解此請求,但拒絕執行。有效憑證不一定能改變結果,因為限制可能來自政策規定。

操作指引: 檢查權限、存取政策、IP/WAF 規則及資源層級授權。

404

找不到

伺服器找不到所要求 URI 的目前表示內容,或不願透露其是否存在。單憑此回應無法判定資源缺失是暫時還是永久。

操作指引: 修正 URL、還原資源;若已確認永久移除,請使用 410。

405

不允許的方法

資源存在,但不支援此請求使用的方法。

操作指引: 使用 Allow 標頭列出資源接受的方法。

406

無法接受

伺服器無法產生符合用戶端主動 Accept 偏好的表示內容。

操作指引: 放寬 Accept 限制,或設定合適的表示方式/內容協商政策。

407

需要 Proxy 驗證

中介 Proxy 要求提供憑證後才會轉送請求。

操作指引: 使用 Proxy-Authenticate/Proxy-Authorization 向 Proxy 驗證;這與向原始伺服器驗證不同。

408

請求逾時

伺服器未能在預定等待時間內收到完整請求。用戶端可以透過新連線重試。

操作指引: 檢查網路停滯、上傳大小,以及伺服器/Proxy 的逾時設定。

409

衝突

請求與資源目前狀態衝突,例如版本不一致或嘗試建立重複項目。

操作指引: 說明衝突原因,並提供足夠的目前狀態資訊,讓用戶端解決問題。

410

已移除

資源是刻意且很可能永久無法使用,並且沒有已知替代項目。此狀態比一般的「找不到」更明確。

操作指引: 若資源是刻意移除,請使用此狀態;並刪除過時的內部連結和參照。

411

需要內容長度

伺服器要求提供 Content-Length 標頭,但請求未提供。

操作指引: 提供正確的 Content-Length,或使用支援的傳輸框架格式。

412

前置條件失敗

If-Match 等請求條件判定為 false,因此伺服器未執行所要求的操作。

操作指引: 更新表示內容,並使用目前的驗證器/狀態重試。

413

內容過大

請求本文超出伺服器願意或能夠處理的大小限制。伺服器可能關閉連線,或允許縮小本文後重試。

操作指引: 縮小負載,或調整已文件化的上傳大小限制。

414

URI 過長

請求目標長度超出伺服器願意解析的範圍,常見原因是查詢字串過長。

操作指引: 使用較短的 URI,或將適合的資料移至請求本文。

415

不支援的媒體類型

伺服器拒絕請求本文,因為不支援其媒體類型、內容編碼或檢查到的格式。

操作指引: 傳送支援的 Content-Type/編碼,以及符合該類型的本文。

416

範圍無法滿足

伺服器無法提供所要求的位元組範圍,例如範圍起點超過表示內容長度。

操作指引: 重新檢查資源長度與範圍單位;伺服器可能回傳 Content-Range: bytes */長度。

417

期望條件失敗

伺服器或中介系統無法滿足 Expect 標頭中宣告的條件。

操作指引: 在安全且適當時,移除不支援的期望條件後重試。

418

我是茶壺

這是源自愚人節規格的幽默狀態碼。它並非一般應用程式錯誤契約,但部分服務會以玩笑方式使用。

操作指引: 不要在要求互通性的正式環境中依賴此狀態碼。

421

錯誤導向的請求

請求抵達的伺服器無法針對目標 URI 提供權威回應,常見原因是連線路由或 HTTP authority 不相符。

操作指引: 請改用適當的連線重試,並檢查 Host/:authority、SNI 和 Proxy 路由。

422

內容無法處理

伺服器能理解內容類型和語法,但無法套用指令或驗證提交的內容。

操作指引: 回傳可採取行動的欄位級驗證細節;修正負載後可能即可成功。

423

已鎖定

WebDAV 資源目前已鎖定;必須先解決鎖定狀態,才能執行所要求的方法。

操作指引: 檢查鎖定者、逾時設定和 WebDAV 鎖定權杖處理方式。

424

相依項目失敗

WebDAV 操作失敗,因為同一請求序列中必要的前置操作未成功。

操作指引: 重試相依操作前,先解決較早發生的失敗。

425

請求過早

為降低重放風險,伺服器拒絕處理可能在早期資料階段遭重放的請求。

操作指引: 在不使用早期資料的連線建立後重試。

426

需要升級通訊協定

伺服器拒絕目前使用的通訊協定,並指出用戶端應切換為其他協定。

操作指引: 加入 Upgrade 標頭,說明支援的通訊協定選項。

428

需要前置條件

伺服器要求使用條件式請求以避免更新遺失,但用戶端送出的是無條件請求。

操作指引: 取得目前狀態,並提交適當條件,例如 If-Match。

429

請求過多

依伺服器定義的速率限制,用戶端在指定期間內送出了過多請求。

操作指引: 降低請求頻率、遵守存在時的 Retry-After,並避免大量用戶端同步重試。

431

請求標頭欄位過大

一個或多個標頭欄位或整組標頭過大,因此伺服器不會處理此請求。

操作指引: 縮小 Cookie/自訂標頭,或調整刻意設定的伺服器限制。

451

因法律因素無法提供

伺服器因法律限制而無法提供所要求的資源。

操作指引: 若適當,請說明限制及適用範圍,但不要揭露受保護資訊。

5xx — 伺服器與中介系統錯誤

500

內部伺服器錯誤

伺服器遇到非預期狀況,無法完成請求。若沒有更精確的伺服器錯誤可用,這是一般性後備狀態碼。

操作指引: 將請求與伺服器記錄比對,並避免向訪客公開堆疊追蹤資訊。

501

尚未實作

伺服器不支援完成請求所需的功能,常見情況是尚未實作某方法或能力。

操作指引: 實作所需能力或改用支援的方法;此狀態並非用來表示暫時超載。

502

錯誤閘道

作為閘道或 Proxy 的伺服器,從上游伺服器收到無效回應。

操作指引: 檢查上游伺服器狀態、通訊協定/TLS 設定、DNS 及 Proxy 記錄。

503

服務無法使用

伺服器暫時無法處理請求,常見原因是維護或超載。

操作指引: 若可行,請提供 Retry-After、易懂的回應內容,以及適用於暫時故障的快取控制。

504

閘道逾時

閘道或 Proxy 未能及時收到上游服務的回應。

操作指引: 檢查上游延遲、網路路徑和整條鏈上的逾時預算。

505

不支援此 HTTP 版本

伺服器不支援請求使用的主要 HTTP 版本。

操作指引: 使用支援的通訊協定版本,或更新伺服器/Proxy 設定。

506

變體也在協商

伺服器設定錯誤導致內容協商形成循環:所選變體再次開始協商。

操作指引: 修正變體/協商設定;這是原始伺服器端的故障。

507

儲存空間不足

WebDAV 伺服器無法儲存完成操作所需的表示內容。

操作指引: 重試前請釋出或增加儲存空間,並檢查配額。

508

偵測到迴圈

伺服器在處理請求時偵測到無限迴圈,常見於 WebDAV 繫結遍歷。

操作指引: 中斷循環的資源關係或處理規則。

510

未擴充

請求需要伺服器不支援的擴充功能。

操作指引: 使用支援的擴充組合,或協商其他方案。

511

需要網路驗證

用戶端必須通過驗證才能存取網路,通常是在入口網站登入。此狀態供網路中介系統使用,不是原始網站的登入回應。

操作指引: 完成網路存取驗證後,再重試原始請求。

值得注意的非標準與服務商專用回應

這些值可能出現在特定產品、伺服器記錄、CDN 或應用程式中。它們不可與已登錄標準狀態碼的涵義互換;請查閱產生此回應的服務契約。

419

驗證逾時(非標準)

部分應用程式會在驗證工作階段逾期時使用此標籤。這不是普遍指定的 HTTP 狀態碼,因此用戶端無法依賴一致的語意。

操作指引: 依服務契約更新驗證資訊。

420

保持冷靜(非標準)

過去有些服務商使用此專用回應表示流量限制。其意義由具體實作決定。

操作指引: 遵循已文件化的速率限制指引。

444

連線已關閉(非標準)

部分伺服器會在未傳送一般回應的情況下關閉連線,常見於過濾措施。

操作指引: 檢查服務商記錄;用戶端可能顯示網路錯誤,而非此狀態碼。

449

附加資訊後重試(非標準)

部分服務使用 Microsoft 擴充功能,要求用戶端附上額外資訊後重試。

操作指引: 遵循該 API 的專屬文件。

499

用戶端已關閉請求(非標準)

如果用戶端在上游回應完成前中斷連線,反向 Proxy 可能會記錄此狀態。它通常是記錄分類,而不是傳送給該用戶端的回應。

操作指引: 調查用戶端取消請求及上游回應過慢的情況。

509

超出頻寬限制(非標準)

部分主機代管平台使用此狀態碼表示已達配額或頻寬上限。它不是普遍相容的 HTTP 語意。

操作指引: 檢查主機代管服務的配額與計費設定。

520

Web 伺服器回傳未知錯誤(服務商專用)

CDN 或 Proxy 收到非預期或空白的原始伺服器回應時,可能使用此狀態。

操作指引: 比較邊緣節點和原始伺服器記錄,並確認原始伺服器會傳送有效的 HTTP 回應。

521

Web 伺服器停機(服務商專用)

Proxy 無法與原始伺服器建立連線,或原始伺服器拒絕連線。

操作指引: 檢查原始伺服器是否可用、防火牆規則及 Proxy 允許清單。

522

連線逾時(服務商專用)

邊緣服務已連線或嘗試連線至原始伺服器,但未能在逾時前完成交換。

操作指引: 檢查原始伺服器的回應速度和網路延遲。

523

無法連線至原始伺服器(服務商專用)

Proxy 無法連線至已設定的原始伺服器位址。

操作指引: 檢查 DNS 解析、路由和原始伺服器 IP 設定。

524

發生逾時(服務商專用)

已成功連線至原始伺服器,但原始伺服器未及時傳送 HTTP 回應。

操作指引: 縮短原始伺服器的處理時間,或調整支援的逾時設定。

525

SSL 握手失敗(服務商專用)

Proxy 無法完成與原始伺服器之間的 TLS 協商。

操作指引: 驗證憑證、通訊協定/加密套件相容性及 SNI。

526

SSL 憑證無效(服務商專用)

中介系統在驗證過程中拒絕原始伺服器的憑證。

操作指引: 安裝有效、名稱正確、受信任且未過期的憑證,並提供完整憑證鏈。

527

Railgun 錯誤(服務商專用)

舊版/服務商專用的 Proxy 狀態碼,表示原始伺服器加速連線發生故障。

操作指引: 檢查服務商專用連接器及通往原始伺服器的路徑。

598

網路讀取逾時(非標準)

部分用戶端或 Proxy 以此值表示網路讀取逾時。它沒有通用的 HTTP 語意。

操作指引: 檢查用戶端/Proxy 診斷資訊。

599

網路連線逾時(非標準)

部分 Proxy 在網路連線嘗試逾時時使用此值。其意義取決於具體實作。

操作指引: 檢查可連線性和逾時設定。

在重新導向與 SEO 稽核中使用狀態碼

URL 永久移動時,只有在預期由目標 URL 取代舊 URL 的情況下才使用永久重新導向;暫時變更則選擇暫時回應。請縮短重新導向鏈,並指向最終且相符的目標。確認每個 Location 值都能解析、最終回應符合預期,且 canonical 標籤和內部連結與目標 URL 一致。結尾的 2xx 只能確認 HTTP 請求成功,不能證明頁面有用、可索引或技術狀況健全。

來源與參考說明

本頁以實務角度整理 HTTP 狀態碼語意。標準登錄表與 RFC 是標準狀態碼的權威參考;MDN 提供易讀的技術指南,維基百科則是社群維護的補充概覽。