跳到正文
馬克工具箱

HTTP 狀態碼大全

完整、可搜尋的 HTTP 回應狀態碼列表。每個狀態碼都附有簡短的中文解釋和定義出處,幫你快速看懂日誌或瀏覽器中的錯誤。

在瀏覽器本地執行,輸入的內容和檔案都不會上傳

100

ContinueRFC 9110

伺服器已收到請求標頭,客戶端可以繼續傳送請求體。

101

Switching ProtocolsRFC 9110

伺服器按客戶端的要求切換協議,例如升級到 WebSocket。

103

Early HintsRFC 8297

在最終回應之前先發送部分回應標頭,通常是 Link 預載入提示。

200

OKRFC 9110

請求成功。

201

CreatedRFC 9110

請求成功並建立了新資源,通常用於 POST 或 PUT 之後。

202

AcceptedRFC 9110

請求已被接受,但尚未處理完成,常用於非同步任務。

203

Non-Authoritative InformationRFC 9110

返回的內容經過了代理的修改。

204

No ContentRFC 9110

請求成功,但沒有返回內容。

205

Reset ContentRFC 9110

請求成功,客戶端應重置文件檢視,例如清空表單。

206

Partial ContentRFC 9110

按 Range 請求只返回了資源的一部分,用於斷點續傳和分段下載。

207

Multi-StatusRFC 4918 (WebDAV)

以 XML 返回多個操作各自的狀態(WebDAV)。

208

Already ReportedRFC 5842 (WebDAV)

集合成員已在之前的回應中列出(WebDAV)。

226

IM UsedRFC 3229

回應是對資源應用例項操作(如增量編碼)後的結果。

300

Multiple ChoicesRFC 9110

資源有多個可選的表示形式。

301

Moved PermanentlyRFC 9110

資源已永久移動到 Location 指定的網址,搜尋引擎會把權重轉移到新網址。

302

FoundRFC 9110

資源臨時位於其他網址。瀏覽器跟隨跳轉時可能把 POST 改成 GET。

303

See OtherRFC 9110

請用 GET 到另一個網址獲取結果,常用於表單提交之後。

304

Not ModifiedRFC 9110

資源未修改,客戶端可以繼續使用快取(條件請求)。

307

Temporary RedirectRFC 9110

臨時重定向,並保持原請求方法和請求體不變。

308

Permanent RedirectRFC 9110

永久重定向,並保持原請求方法和請求體不變。

400

Bad RequestRFC 9110

請求有誤(格式錯誤、引數無效等),伺服器無法處理。

401

UnauthorizedRFC 9110

需要身份驗證或驗證失敗,回應中會帶有 WWW-Authenticate 頭。

402

Payment RequiredRFC 9110

保留待用,部分 API 用它表示需要付費或賬戶欠費。

403

ForbiddenRFC 9110

伺服器理解請求但拒絕執行,重新登入也無濟於事(權限不足、被封禁等)。

404

Not FoundRFC 9110

資源不存在,或者伺服器不願透露它是否存在。

405

Method Not AllowedRFC 9110

該資源不支援此請求方法,Allow 頭會列出支援的方法。

406

Not AcceptableRFC 9110

沒有符合請求 Accept 頭要求的內容格式。

407

Proxy Authentication RequiredRFC 9110

需要先通過代理伺服器的身份驗證。

408

Request TimeoutRFC 9110

伺服器等待請求超時。

409

ConflictRFC 9110

請求與資源的當前狀態衝突,例如編輯衝突、重複建立。

410

GoneRFC 9110

資源已被永久刪除,不會再恢復。

411

Length RequiredRFC 9110

請求缺少 Content-Length 頭。

412

Precondition FailedRFC 9110

請求標頭中的前提條件(如 If-Match)不滿足。

413

Content Too LargeRFC 9110

請求體超過了伺服器允許的大小,常見於上傳檔案過大。舊稱 Payload Too Large。

414

URI Too LongRFC 9110

請求的網址過長。

415

Unsupported Media TypeRFC 9110

不支援請求體的格式(Content-Type)。

416

Range Not SatisfiableRFC 9110

請求的 Range 超出了資源的範圍。

417

Expectation FailedRFC 9110

無法滿足請求中 Expect 頭的要求。

418

I'm a teapotRFC 2324 (April Fools)

源自愚人節 RFC「超文字咖啡壺控制協議」的玩笑狀態碼,部分伺服器仍保留。

421

Misdirected RequestRFC 9110

請求被髮送到了無法回應該主機的伺服器,常見於連線複用。

422

Unprocessable ContentRFC 9110

請求格式正確,但內容無法處理,例如欄位校驗失敗。

423

LockedRFC 4918 (WebDAV)

資源已被鎖定(WebDAV)。

424

Failed DependencyRFC 4918 (WebDAV)

所依賴的另一個請求失敗,導致本請求失敗(WebDAV)。

425

Too EarlyRFC 8470

伺服器不願處理可能被重放的請求(TLS 早期資料)。

426

Upgrade RequiredRFC 9110

客戶端需要切換到 Upgrade 頭指定的協議。

428

Precondition RequiredRFC 6585

伺服器要求請求帶上條件頭,以防止更新丟失。

429

Too Many RequestsRFC 6585

請求過於頻繁,觸發了限流。Retry-After 頭說明多久後可以重試。

431

Request Header Fields Too LargeRFC 6585

請求標頭過大,常見原因是 Cookie 太多太大。

451

Unavailable For Legal ReasonsRFC 7725

因法律原因無法提供該資源,例如法院命令。

499

Client Closed RequestNginx · 非標準

Nginx 日誌中的狀態碼:伺服器回應之前客戶端已斷開連線。

500

Internal Server ErrorRFC 9110

伺服器內部發生了意外錯誤。

501

Not ImplementedRFC 9110

伺服器不支援完成請求所需的功能。

502

Bad GatewayRFC 9110

閘道器或代理從上游伺服器收到了無效的回應,常見於後端服務崩潰或未啟動。

503

Service UnavailableRFC 9110

伺服器暫時無法處理請求,例如過載或維護中。

504

Gateway TimeoutRFC 9110

閘道器或代理等待上游伺服器回應超時。

505

HTTP Version Not SupportedRFC 9110

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

506

Variant Also NegotiatesRFC 2295

透明內容協商配置有誤,形成了循環。

507

Insufficient StorageRFC 4918 (WebDAV)

伺服器儲存空間不足,無法完成請求(WebDAV)。

508

Loop DetectedRFC 5842 (WebDAV)

伺服器處理請求時檢測到無限循環(WebDAV)。

511

Network Authentication RequiredRFC 6585

需要先登入網路,常見於酒店、機場 Wi-Fi 的認證頁面。

520

Web Server Returned an Unknown ErrorCloudflare · 非標準

Cloudflare:源站返回了空的、未知的或異常的回應。

521

Web Server Is DownCloudflare · 非標準

Cloudflare:源站拒絕了連線。

522

Connection Timed OutCloudflare · 非標準

Cloudflare:與源站建立 TCP 連線超時。

524

A Timeout OccurredCloudflare · 非標準

Cloudflare:源站接受了連線,但沒有在限定時間內返回回應。

使用步驟

  1. 在搜尋框中輸入狀態碼或關鍵詞,例如 502 或「重定向」。
  2. 或者按類別篩選:資訊、成功、重定向、客戶端錯誤、伺服器錯誤。
  3. 在網址後面加上

引數說明

類別
1xx 表示資訊,2xx 表示成功,3xx 表示重定向,4xx 是客戶端錯誤(請求有問題),5xx 是伺服器錯誤(伺服器出了問題)。
非標準狀態碼
Nginx 的 499、Cloudflare 的 520–524 等不屬於任何 RFC,但在日誌中很常見。

如何選擇重定向狀態碼

RFC 9110 中的五個重定向狀態碼有兩點區別:跳轉是否是永久的,以及客戶端跟隨跳轉時是否可以改變請求方法。

狀態碼 含義 是否永久 跳轉後的請求方法
301 Moved Permanently(永久移動) 是 可能從 POST 變成 GET
302 Found(臨時找到) 否 可能從 POST 變成 GET
303 See Other(檢視其他位置) 否 一律變成 GET
307 Temporary Redirect(臨時重定向) 否 必須保持不變
308 Permanent Redirect(永久重定向) 是 必須保持不變

普通的頁面搬家或 HTTP 跳轉 HTTPS,一般選 301。如果 POST 請求(例如表單或 API 呼叫)必須原樣到達新地址,用 308 或 307。表單提交成功後,用 303 把瀏覽器引導到結果頁面,由瀏覽器用 GET 去獲取。

常見問題

301 和 302 有什麼區別?

301 是永久跳轉,瀏覽器和搜尋引擎會記住新網址;302 是臨時跳轉。如果要求保持請求方法和請求體不變,請用 308 或 307。

401 和 403 有什麼區別?

401 表示未通過身份驗證,登入後可以重試;403 表示已辨識身份但沒有權限,重新登入也沒有用。

502 Bad Gateway 是什麼意思?

代理或負載均衡(如 Nginx)沒能從後端應用拿到有效回應,通常是應用崩潰、正在重啟或沒有監聽埠。

隱私說明

本工具完全在瀏覽器中執行,檔案和文字都在你的裝置上處理,不會上傳到我們的伺服器。

相關工具