關(guān)于服務(wù)器返回的十四種常見HTTP狀態(tài)碼詳解

HTTP狀態(tài)碼
狀態(tài)碼是由3位數(shù)字和原因短語組成的(比如最常見的:200 OK),其中第一位數(shù)字表示響應(yīng)類別,響應(yīng)類別從1到5分為五種
add:其實(shí)我查閱資料發(fā)現(xiàn)還有一個6打頭的一個 600 Unparseable Response Headers
表示服務(wù)器沒有返回響應(yīng)頭部,只返回實(shí)體內(nèi)容,也算做服務(wù)器錯誤狀態(tài)碼吧,不過絕對不常見
狀態(tài)碼 | 響應(yīng)類別 | 原因短語 |
1XX | 信息性狀態(tài)碼(Informational) | 服務(wù)器正在處理請求 |
2XX | 成功狀態(tài)碼(Success) | 請求已正常處理完畢 |
3XX | 重定向狀態(tài)碼(Redirection) | 需要進(jìn)行額外操作以完成請求 |
4XX | 客戶端錯誤狀態(tài)碼(Client Error) | 客戶端原因?qū)е路?wù)器無法處理請求 |
5XX | 服務(wù)器錯誤狀態(tài)碼(Server Error) | 服務(wù)器原因?qū)е绿幚碚埱蟪鲥e |
狀態(tài)碼響應(yīng)類別的的定義是必須遵守的,后面的兩個數(shù)字服務(wù)器自己DIY也沒什么問題
RFC2616(用來指定HTTP協(xié)議標(biāo)準(zhǔn)的文檔)標(biāo)準(zhǔn)定義的就有四十多種,加上擴(kuò)展能達(dá)到六十種
不過常見的大概只有十四種,下面我來談?wù)勥@些有代表性的14種HTTP狀態(tài)碼
2XX 成功
200 OK
表示請求被服務(wù)器正常處理
最常見的就是這個了,隨著這個狀態(tài)碼返回的信息跟你的請求方法有關(guān),比如GET請求,請求的資源會作為響應(yīng)實(shí)體返回,而HEAD請求,信息只存在于響應(yīng)報文首部,因?yàn)樗粫祷貓笪膶?shí)體,只返回報文首部
204 No Content
表示請求已成功處理,但是沒有內(nèi)容返回(就應(yīng)該沒有內(nèi)容返回的狀況),也就是返回的響應(yīng)報文中沒有報文實(shí)體(其實(shí)是沒有報文實(shí)體的主體部分),瀏覽器向服務(wù)器發(fā)送請求后收到了204,那么瀏覽器頁面不會發(fā)生更新,一般用在只是客戶端向服務(wù)器發(fā)送信息,而服務(wù)器不用向客戶端返回什么信息的情況
206 Partial Content
表示服務(wù)器已經(jīng)完成了部分GET請求(客戶端進(jìn)行了范圍請求),響應(yīng)報文中包含Content-Range指定范圍的實(shí)體內(nèi)容
3XX 重定向
301 Moved Permanently
永久重定向,表示請求的資源已經(jīng)永久的搬到了其他位置,就是說資源已經(jīng)被分配了新的URI ,新的URI應(yīng)該提示在響應(yīng)報文的Location首部字段,只要不是HEAD請求,響應(yīng)實(shí)體應(yīng)該包含新URI的超鏈接和簡短的說明
302 Found
臨時重定向,表示請求的資源臨時搬到了其他位置,請求的資源暫時被配到到了新的URI,和301很像,只不過資源是臨時移動,資源在將來可能還會改變,同樣地,新的臨時URI應(yīng)該提示在響應(yīng)報文的Location首部字段,只要不是HEAD請求,響應(yīng)實(shí)體應(yīng)該包含新URI的超鏈接和簡短的說明
303 See Other
表示請求資源存在另一個URI,應(yīng)使用GET定向獲取請求資源,303功能與302一樣,區(qū)別只是303明確客戶端應(yīng)該使用GET訪問,(很多HTTP/1.1之前的瀏覽器不能理解303,但是大家都把302當(dāng)303對待,使用GET請求新URI)
304 Not Modified
表示客戶端發(fā)送附帶條件的請求(GET方法請求報文中的IF…)時,條件不滿足,返回304時,不包含任何響應(yīng)主體,雖然304被劃分在3XX,但和重定向一毛錢關(guān)系都沒有
307 Temporary Redirect
臨時重定向,和302有著相同含義,盡管302標(biāo)準(zhǔn)禁止POST變?yōu)镚ET,但沒人聽他的,而307就會遵照標(biāo)準(zhǔn),不會從POST變?yōu)镚ET,但處理響應(yīng)行為,各個瀏覽器可能不同
4XX 客戶端錯誤
400 Bad Request
表示請求報文存在語法錯誤或參數(shù)錯誤,服務(wù)器不理解,服務(wù)器不應(yīng)該重復(fù)提交這個請求,需要修改請求內(nèi)容后再次發(fā)送
401 Unauthorized
表示發(fā)送的請求需要有HTTP認(rèn)證信息或者是認(rèn)證失敗了,返回401的響應(yīng)必須包含一個適用于被請求資源的WWW-Authenticate首部以質(zhì)詢用戶信息,瀏覽器初次接受401時,會彈出認(rèn)證窗口
403 Forbidden
表示對請求資源的訪問被服務(wù)器拒絕了,服務(wù)器可以對此作出解釋,也可以不解釋,想說明的話可以在響應(yīng)實(shí)體的主體部分描述原因,比如說你可能沒有訪問權(quán)限
404 Not Found
表示服務(wù)器找不到你請求的資源,也有可能服務(wù)器就是不想給你然后騙你找不到(⊙ˍ⊙),而且大多服務(wù)器都是這么玩這個狀態(tài)碼的
5XX 服務(wù)器錯誤
500 Internal Server Error
表示服務(wù)器執(zhí)行請求的時候出錯了,可能是Web應(yīng)用有bug或臨時故障,更有可能是服務(wù)器源代碼有bug…
503 Service Unavailable
表示服務(wù)器超負(fù)載或正停機(jī)維護(hù),無法處理請求,如果服務(wù)器知道還需要多長時間,就寫入Retry-After首部字段返回
總結(jié)
返回的狀態(tài)碼和狀態(tài)不一致的情況是有可能發(fā)生得,比如Web應(yīng)用程序內(nèi)部錯誤,但仍然返回 200 OK
200 OK
請求正常處理完畢
204 No Content
請求成功處理,沒有實(shí)體的主體返回
206 Partial Content
GET范圍請求已成功處理
301 Moved Permanently
永久重定向,資源已永久分配新URI
302 Found
臨時重定向,資源已臨時分配新URI
303 See Other
臨時重定向,期望使用GET定向獲取
304 Not Modified
發(fā)送的附帶條件請求未滿足
307 Temporary Redirect
臨時重定向,POST不會變成GET
400 Bad Request
請求報文語法錯誤或參數(shù)錯誤
401 Unauthorized
需要通過HTTP認(rèn)證,或認(rèn)證失敗
403 Forbidden
請求資源被拒絕
404 Not Found
無法找到請求資源(服務(wù)器無理由拒絕)
500 Internal Server Error
服務(wù)器故障或Web應(yīng)用故障
503 Service Unavailable
服務(wù)器超負(fù)載或停機(jī)維護(hù)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
- HTTP狀態(tài)碼我們都很熟悉,SEO工作中我們也需要迎合百度蜘蛛對常見的HTTP返回碼來做相關(guān)調(diào)整,下面我們就來淺談百度爬蟲的HTTP狀態(tài)碼返回機(jī)制2016-06-22
http狀態(tài)碼批量檢測工具 v1.11.39.0 官方多語言中文免費(fèi)安裝版
http狀態(tài)碼批量檢測工具是一款網(wǎng)頁http狀態(tài)碼批量查詢工具,支持批量導(dǎo)入URL,并查詢http狀態(tài)碼,并能將查詢結(jié)果導(dǎo)出為CSV文件,對seo有很大幫助2016-03-29- HTTP狀態(tài)碼是服務(wù)器出現(xiàn)錯誤時的反饋內(nèi)容,好讓開發(fā)人員以此來判定問題所在,本工具盡可能的羅列出所有的HTTP狀態(tài)碼,以便大家參考、查詢、對證2016-02-26
- 這篇文章主要詳細(xì)介紹了HTTP協(xié)議中狀態(tài)碼的含義,十分的全面,有需要的小伙伴參考下2014-12-25
HTTP狀態(tài)碼批量查詢工具 V2.0 中文綠色免費(fèi)版
http狀態(tài)碼批量查詢工具(支持多級查詢,多線程,全網(wǎng)首發(fā)url跳轉(zhuǎn)次數(shù)、跳轉(zhuǎn)情況查詢),一分鐘查詢上千url不是問題2015-11-01HTTPS加密對我們的網(wǎng)站優(yōu)化推廣有哪些影響?
不明真相的吃瓜群眾可能會問“什么是HTTPS加密?HTTPS加密和http又有哪些聯(lián)系?”,在這里的話還是引用一段百度百科的介紹,順便也給自己再上一課。那么HTTPS加密對我們的網(wǎng)2016-11-06- 這篇文章主要介紹了HTTP協(xié)議的頭信息詳解,需要的朋友可以參考下2016-09-19
- HTTPS協(xié)議位于TCP/IP協(xié)議與應(yīng)用層各協(xié)議之間,是基于HTTP協(xié)議的一種對傳輸數(shù)據(jù)加密的協(xié)議。感興趣的朋友可以過來看看2016-09-09
- HTTPS(全稱:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全為目標(biāo)的HTTP通道,簡單講是HTTP的安全版。即HTTP下加入SSL層,HTTPS的安全基礎(chǔ)是SSL,2016-09-09
- HTTP 超文本傳輸協(xié)議 (HTTP-Hypertext transfer protocol),是一個屬于應(yīng)用層的面向?qū)ο蟮膮f(xié)議,由于其簡捷、快速的方式,適用于分布式超媒體信息系統(tǒng)。感興趣的朋友可以過2016-08-23