響應報文的狀態碼
響應報文的狀態碼
-
狀態碼用來告訴HTTP客戶端HTTP服務器是否產生了預期的response。狀態碼總共只有三位,第一位表示狀態類別,總共分五種。
(1) 1xx: 是進度通知類狀態,意思就是說“請求我已經收到了,或你的請求我正在處理”。
(2) 2xx: 表示“你的請求我已經成功處理了”。
(3) 3xx: 即重定向,也就是服務器告訴客戶端“你要的資源搬家了,你到某某地方再去找它吧”。
(4) 4xx: 客戶端發來的響應報文裏有些錯誤,比如語法錯誤或請求的資源不存在等。
(5) 5xx: 服務器端有些問題,已經無法處理完成你的請求了。
-
常用狀態碼,用服務器與客戶端對話的形式列舉如下。
(1) 200 OK: 客戶端,你的請求處理成功,你要的東西就在響應報文裏了。
(2) 301 Moved Permanently: 客戶端,你要請求的資源已經永久地搬家了,我把它的新地址放到Location頭部域中了。
(3) 302 Moved Temporarily: 客戶端,你要請求的資源臨時有事去別的地方了,我把它的位置放到Location頭部域中了,你可以先去那裏找它,不過它應該會回到它原來的家的。
(4) 304 Not Modified: 客戶端,你要請求的資源自從上次你請求之後,就再也沒有改動過。我想你應該早就有這個資源了,所以在響應報文的數據部分我就沒有再放這個資源。
(5) 400 Bad Request: 客戶端,你發來的請求報文裏有語法錯誤,服務器端是在看不懂。
(6) 401 Unauthorized: 客戶端,你發來的請求不是合法來源的請求,你是沒有被授權的客戶端吧。
(7) 403 Forbidden: 服務器端順利收到了客戶端的請求,但因為某些理由,服務器端拒絕為你提供服務。
(8) 404 Not Found: 客戶端,你請求的資源不存在,八成是資源地址寫錯了。
(9) 500 Internal Server Error: 很遺憾,服務器不能給你提供服務了,服務器內部出現了不可預知的問題。
(10) 502 Bad Gateway: 客戶端你好,我是請求報文的代理服務器,持有資源的那個服務器在給我發送資源時出問題了。
(11) 503 Server Unavailable: 服務器現在可能是太忙了,暫時不能給你這個客戶端提供服務,或許稍後會恢復的。
-
除了以上幾個常用的狀態碼,完整狀態碼含義如下。
(1) 請求收到,繼續處理
HTTP 100——客戶必須繼續發出請求
HTTP 101——客戶要求服務器根據請求轉換HTTP協議版本
(2) 操作成功收到,分析、接受
HTTP 200——交易成功
HTTP 201——提示知道新文件的URL
HTTP 202——接受和處理,但處理未完成
HTTP 203——返回信息部確定或不完整
HTTP 204——請求收到,但返回信息為空
HTTP 205——服務器完成了請求,用戶代理必須復位當前已經瀏覽過的文件
HTTP 206——服務器已經完成了部分用戶的get請求
(3) 完成此請求必須進一步處理
HTTP 300——請求的資源可在多處得到
HTTP 301——刪除請求數據
HTTP 302——在其他地址發現了請求數據
HTTP 303——建議客戶訪問其他URL或訪問方式
HTTP 304——客戶端已經執行了get,但文件未變化
HTTP 305——請求的資源必須從服務器指定的地址得到
HTTP 306——前一版本HTTP中使用的代碼,現行版本中不再使用
HTTP 307——申明請求的資源臨時性刪除
(4) 請求包含一個錯誤語法或不能完成
HTTP 400——錯誤請求,如語法錯誤
HTTP 401——未授權
HTTP 401.1——未授權: 登錄失敗
HTTP 401.2——未授權: 服務器配置問題導致登錄失敗
HTTP 401.3——未授權: 禁止訪問資源
HTTP 401.4——未授權: 授權被篩選器拒絕
HTTP 401.5——未授權: ISAPI 或 CGI 授權失敗
HTTP 402——保留有效ChargeTo 頭響應
HTTP 403——禁止訪問
HTTP 403.1——禁止訪問: 禁止可執行訪問
HTTP 403.2——禁止訪問: 禁止讀訪問
HTTP 403.3——禁止訪問: 禁止寫訪問
HTTP 403.4——禁止訪問: 要求SSL
HTTP 403.5——禁止訪問: 要求SSL 128
HTTP 403.6——禁止訪問: IP 地址被拒絕
HTTP 403.7——禁止訪問: 要求客戶證書
HTTP 403.8——禁止訪問: 禁止站點訪問
HTTP 403.9——禁止訪問: 連接的用戶過多
HTTP 403.10——禁止訪問: 配置無效
HTTP 403.11——禁止訪問: 密碼更改
HTTP 403.12——禁止訪問: 映射器拒絕訪問
HTTP 403.13——禁止訪問: 客戶證書已被吊銷
HTTP 403.14——禁止訪問: Web服務器被配置不列除此目錄的內容
HTTP 403.15——禁止訪問: 客戶訪問許可過多
HTTP 403.16——禁止訪問: 客戶證書不可信或者無效
HTTP 403.17——禁止訪問: 客戶證書已經到期或者尚未生效
HTTP 404——沒有發現文件、查詢或URI
HTTP 405——用戶在Request-Line 字段定義的方法不允許
HTTP 406——無法接受用戶發送的請求,請求資源不可被訪問
HTTP 407——類似401,用戶必須首先在代理服務器上得到授權
HTTP 408——客戶端沒有在用戶指定的時間內完成請求
HTTP 409——對當前資源狀態,請求不能完成
HTTP 410——服務器上不再有此資源且無法進一步的參考地址
HTTP 411——服務器拒絕用戶定義的Conten-Length屬性請求
HTTP 412——一個或多個請求頭字段在當前請求中錯誤
HTTP 413——請求的資源大於服務器允許的大小
HTTP 414——請求的資源URL 長於服務器允許的長度
HTTP 415——請求資源不支持請求項目格式
HTTP 416——請求中包含Range請求頭字段,在當前請求資源範圍內沒有range指示值,請求也不包含If-Range請求頭字段
HTTP 417——在請求頭Expect中指定的預期內容無法被服務器滿足,或者這個服務器是一個代理服務器,它在當前路由的下一個節點上,Expect的內容無法被滿足。
(5) 服務器執行一個完全有效請求失敗
HTTP 500——內部服務器錯誤
HTTP 500.11——服務器關閉
HTTP 500.12——應用程序重新啟動
HTTP 500.13——服務器太忙
HTTP 500.14——應用程序無效
HTTP 500.15——不允許請求
HTTP 501——未實現
HTTP 502——網關錯誤
響應報文的狀態碼