🌐 ZH-TW

🔢 HTTP 狀態碼參考

完整的標準 HTTP 狀態碼參考,從 1xx(資訊)到 5xx(伺服器錯誤)依類別分組。每筆都會顯示官方原因短語、一行描述,以及其來源 RFC 章節。可依代碼、原因短語或描述進行即時搜尋。

指南

瞭解更多

01

1. 五大 HTTP 狀態碼類別

HTTP 狀態碼依第一位數字分為五類:1xx(資訊,請求仍在處理中)、2xx(成功,請求已接收、理解並接受)、3xx(重新導向,需要進一步操作才能完成請求)、4xx(用戶端錯誤,請求本身有問題)以及 5xx(伺服器錯誤,伺服器未能完成看似有效的請求)。這種設計讓用戶端和代理即使面對未明確認識的狀態碼,也能只靠第一位數字做出合理的備援決策。

02

2. 常被混淆的代碼組合

401 Unauthorized 其實表示「未驗證」(儘管名稱如此,它是驗證問題,不是授權問題),而 403 Forbidden 則表示伺服器會拒絕存取,無論是否已驗證,因為用戶端缺少權限。301/308(永久)與 302/307(暫時)在快取與 SEO 上有差異;307 與 308 會在重新導向時保留原始 HTTP 方法與主體,這點不同於 302 與 301。404 Not Found 與 410 Gone 也常常被混淆——410 是更強烈的訊號,表示資源先前存在但已被有意且永久移除,告訴用戶端停止重試。

03

3. RFC 9110 與狀態碼標準化

RFC 9110(HTTP Semantics)於 2022 年發布,整合了先前分散在 RFC 7231 與相關文件中的 HTTP 狀態碼定義。本參考資料以 RFC 9110 的 §15.x 章節作為主要依據,而由其他規格定義的代碼——例如 WebDAV(RFC 4918)或 RFC 6585(429/431)中的速率限制代碼——則引用對應的 RFC。精準使用狀態碼可讓 API 用戶端、監控工具與快取伺服器行為更可預測。

常見問題

這份清單缺少任何標準狀態碼嗎?
已收錄官方 IANA 登錄庫中登錄的所有狀態碼。特定框架或 CDN 回傳的非標準代碼可能不會出現在這裡。
搜尋是如何運作的?
任何代碼、原因短語或描述中包含搜尋文字(不分大小寫)的列都會顯示。例如,搜尋「四零四」或「not found」都可以。
422 與 400 有何不同?
400 表示請求本身格式錯誤(語法不正確),而 422 表示語法沒問題,但其指令無法被處理(例如驗證錯誤)。
這份資料會傳到任何地方嗎?
不會。這是完全靜態的參考資料,搜尋只在您的瀏覽器 JavaScript 中執行——不會傳送到任何伺服器。