HTTP 狀態碼是什麼意思
更新 2026-07-06
每次瀏覽器載入頁面或應用呼叫 API,伺服器都會用一個三位數狀態碼回覆。大多數時候你根本看不到它,但一旦出問題 —— 404、500 —— 那個數字就是第一條線索。本指南教你一眼讀懂狀態碼。
讀首位數字
訣竅在於 首位數字告訴你類別,這樣即使一個你從沒見過的碼,也能理解它的意圖:
- 1xx —— 資訊(Informational): 已收到,仍在處理(日常使用中很少見)。
- 2xx —— 成功(Success): 成功了。
- 3xx —— 重新導向(Redirection): 資源在別處。
- 4xx —— 用戶端錯誤(Client error): 請求錯了(你這邊)。
- 5xx —— 伺服器錯誤(Server error): 請求沒問題,是伺服器失敗了。
除錯時,4xx 與 5xx 的這道分界最有用:4xx 意味著去改請求;5xx 意味著是伺服器的錯。
你真正會遇到的碼
成功與重新導向
- 200 OK —— 標準的「成功了」回應。
- 201 Created —— 建立了一個新資源(在 POST 之後)。
- 301 Moved Permanently —— 此 URL 已永久遷移;更新你的連結。對 SEO 很重要。
- 302 Found —— 暫時重新導向;繼續用原來的 URL。
- 304 Not Modified —— 你快取的副本仍然有效,所以什麼都沒重新傳送。
用戶端錯誤 (4xx)
- 400 Bad Request —— 請求格式有誤。
- 401 Unauthorized —— 你需要驗證(登入)。
- 403 Forbidden —— 你已驗證但不被允許。
- 404 Not Found —— 資源不存在。
- 429 Too Many Requests —— 你被限流了;慢一點。
伺服器錯誤 (5xx)
- 500 Internal Server Error —— 一個通用的伺服器端故障。
- 502 Bad Gateway —— 上游的伺服器回傳了一個錯誤的回應。
- 503 Service Unavailable —— 伺服器過載,或因維護而下線。
- 504 Gateway Timeout —— 上游伺服器沒有及時回應。
401 vs. 403:一個常見的混淆
這兩個感覺相似,但差在一個詞。401 Unauthorized 其實意思是「未驗證(unauthenticated)」—— 伺服器不知道你是誰,所以去登入。403 Forbidden 意思是伺服器知道你是誰,卻仍然不允許。一個關乎身分,另一個關乎權限。
完整清單
要看每一個已註冊的碼及其含義 —— 可搜尋、按類分組 —— 見我們的 完整 HTTP 狀態碼參考。如果你在除錯 API 回應,我們關於 JWT 和 URL 編碼 的指南講了你會不斷遇到的另外兩樣東西。
更多 網路與開發者
查看全部 網路與開發者 指南 →本指南提到的工具