常見的62種http響應(yīng)代碼整理,當(dāng)網(wǎng)站出現(xiàn)流量下降,索引下降,Robots檢測(cè)失敗,無法訪問時(shí),首先應(yīng)檢查HTTP響應(yīng)狀態(tài)代碼指示特定HTTP請(qǐng)求是否已成功完成。
當(dāng)流量下降、索引下降、Robots檢測(cè)失敗、無法訪問時(shí),各位站長(zhǎng)們可以通過以下瀏覽器反饋的代碼結(jié)合資源平臺(tái)的抓取診斷進(jìn)行排查:
首先,HTTP 響應(yīng)狀態(tài)代碼指示特定HTTP請(qǐng)求是否已成功完成;響應(yīng)分共為五類:
信息響應(yīng)(100–199);
成功響應(yīng)(200–299);
重定向(300–399);
客戶端錯(cuò)誤(400–499);
服務(wù)器錯(cuò)誤 (500–599)。
一、信息響應(yīng)
1、100 Continue:這個(gè)臨時(shí)響應(yīng)表明,迄今為止的所有內(nèi)容都是可行的,客戶端應(yīng)該繼續(xù)請(qǐng)求,如果已經(jīng)完成,則忽略它。
2、101 Switching Protocol:該代碼是響應(yīng)客戶端的 Upgrade (en-US) 標(biāo)頭發(fā)送的,并且指示服務(wù)器也正在切換的協(xié)議。
3、102 Processing (WebDAV (en-US)):此代碼表示服務(wù)器已收到并正在處理該請(qǐng)求,但沒有響應(yīng)可用。
4、103 Early Hints:此狀態(tài)代碼主要用于與Link 鏈接頭一起使用,以允許用戶代理在服務(wù)器仍在準(zhǔn)備響應(yīng)時(shí)開始預(yù)加載資源。
二、成功響應(yīng)
1、200 OK:請(qǐng)求成功,成功的含義取決于HTTP方法:
①GET:資源已被提取并在消息正文中傳輸;
②HEAD:實(shí)體標(biāo)頭位于消息正文中;
③POST:描述動(dòng)作結(jié)果的資源在消息體中傳輸;
④TRACE:消息正文包含服務(wù)器收到的請(qǐng)求消息;
2、201 Created:該請(qǐng)求已成功,并因此創(chuàng)建了一個(gè)新的資源。這通常是在POST請(qǐng)求,或是某些PUT請(qǐng)求之后返回的響應(yīng)。
3、202 Accepted:請(qǐng)求已經(jīng)接收到,但還未響應(yīng),沒有結(jié)果。意味著不會(huì)有一個(gè)異步的響應(yīng)去表明當(dāng)前請(qǐng)求的結(jié)果,預(yù)期另外的進(jìn)程和服務(wù)去處理請(qǐng)求,或者批處理。
4、203 Non-Authoritative Information:服務(wù)器已成功處理了請(qǐng)求,但返回的實(shí)體頭部元信息不是在原始服務(wù)器上有效的確定集合,而是來自本地或者第三方的拷貝。當(dāng)前的信息可能是原始版本的子集或者超集。例如,包含資源的元數(shù)據(jù)可能導(dǎo)致原始服務(wù)器知道元信息的超集。使用此狀態(tài)碼不是必須的,而且只有在響應(yīng)不使用此狀態(tài)碼便會(huì)返回200 OK的情況下才是合適的。
5、204 No Content:服務(wù)器成功處理了請(qǐng)求,但不需要返回任何實(shí)體內(nèi)容,并且希望返回更新了的元信息。響應(yīng)可能通過實(shí)體頭部的形式,返回新的或更新后的元信息。如果存在這些頭部信息,則應(yīng)當(dāng)與所請(qǐng)求的變量相呼應(yīng)。
6、205 Reset Content:服務(wù)器成功處理了請(qǐng)求,且沒有返回任何內(nèi)容。但是與204響應(yīng)不同,返回此狀態(tài)碼的響應(yīng)要求請(qǐng)求者重置文檔視圖。該響應(yīng)主要是被用于接受用戶輸入后,立即重置表單,以便用戶能夠輕松地開始另一次輸入。與204響應(yīng)一樣,該響應(yīng)也被禁止包含任何消息體,且以消息頭后的第一個(gè)空行結(jié)束。
7、206 Partial Content:服務(wù)器已經(jīng)成功處理了部分 GET 請(qǐng)求。類似于 FlashGet 或者迅雷這類的 HTTP 下載工具都是使用此類響應(yīng)實(shí)現(xiàn)斷點(diǎn)續(xù)傳或者將一個(gè)大文檔分解為多個(gè)下載段同時(shí)下載。該請(qǐng)求必須包含 Range 頭信息來指示客戶端希望得到的內(nèi)容范圍,并且可能包含 If-Range 來作為請(qǐng)求條件。
8、207 Multi-Status (WebDAV (en-US)):由WebDAV(RFC 2518)擴(kuò)展的狀態(tài)碼,代表之后的消息體將是一個(gè)XML消息,并且可能依照之前子請(qǐng)求數(shù)量的不同,包含一系列獨(dú)立的響應(yīng)代碼。
9、208 Already Reported (WebDAV (en-US)):在 DAV 里面使用: propstat 響應(yīng)元素以避免重復(fù)枚舉多個(gè)綁定的內(nèi)部成員到同一個(gè)集合。
10、226 IM Used (HTTP Delta encoding):服務(wù)器已經(jīng)完成了對(duì)資源的 GET 請(qǐng)求,并且響應(yīng)是對(duì)當(dāng)前實(shí)例應(yīng)用的一個(gè)或多個(gè)實(shí)例操作結(jié)果的表示。
三、重定向
1、300 Multiple Choice:被請(qǐng)求的資源有一系列可供選擇的回饋信息,每個(gè)都有自己特定的地址和瀏覽器驅(qū)動(dòng)的商議信息。用戶或?yàn)g覽器能夠自行選擇一個(gè)首選的地址進(jìn)行重定向。
2、301 Moved Permanently:被請(qǐng)求的資源已永久移動(dòng)到新位置,并且將來任何對(duì)此資源的引用都應(yīng)該使用本響應(yīng)返回的若干個(gè) URI 之一。如果可能,擁有鏈接編輯功能的客戶端應(yīng)當(dāng)自動(dòng)把請(qǐng)求的地址修改為從服務(wù)器反饋回來的地址。除非額外指定,否則這個(gè)響應(yīng)也是可緩存的。
3、302 Found:請(qǐng)求的資源現(xiàn)在臨時(shí)從不同的 URI 響應(yīng)請(qǐng)求。由于這樣的重定向是臨時(shí)的,客戶端應(yīng)當(dāng)繼續(xù)向原有地址發(fā)送以后的請(qǐng)求。只有在Cache-Control或Expires中進(jìn)行了指定的情況下,這個(gè)響應(yīng)才是可緩存的。
4、303 See Other:對(duì)應(yīng)當(dāng)前請(qǐng)求的響應(yīng)可以在另一個(gè) URI 上被找到,而且客戶端應(yīng)當(dāng)采用 GET 的方式訪問那個(gè)資源。這個(gè)方法的存在主要是為了允許由腳本激活的POST請(qǐng)求輸出重定向到一個(gè)新的資源。
5、304 Not Modified:如果客戶端發(fā)送了一個(gè)帶條件的 GET 請(qǐng)求且該請(qǐng)求已被允許,而文檔的內(nèi)容(自上次訪問以來或者根據(jù)請(qǐng)求的條件)并沒有改變,則服務(wù)器應(yīng)當(dāng)返回這個(gè)狀態(tài)碼。304 響應(yīng)禁止包含消息體,因此始終以消息頭后的第一個(gè)空行結(jié)尾。
6、305 Use Proxy:被請(qǐng)求的資源必須通過指定的代理才能被訪問。Location 域中將給出指定的代理所在的 URI 信息,接收者需要重復(fù)發(fā)送一個(gè)單獨(dú)的請(qǐng)求,通過這個(gè)代理才能訪問相應(yīng)資源。只有原始服務(wù)器才能建立305響應(yīng)。
7、306 unused:在最新版的規(guī)范中,306 狀態(tài)碼已經(jīng)不再被使用。
四、客戶端響應(yīng)
1、400 Bad Request
①語(yǔ)義有誤,當(dāng)前請(qǐng)求無法被服務(wù)器理解。除非進(jìn)行修改,否則客戶端不應(yīng)該重復(fù)提交這個(gè)請(qǐng)求。
②請(qǐng)求參數(shù)有誤。
2、401 Unauthorized:當(dāng)前請(qǐng)求需要用戶驗(yàn)證。該響應(yīng)必須包含一個(gè)適用于被請(qǐng)求資源的 WWW-Authenticate 信息頭用以詢問用戶信息。客戶端可以重復(fù)提交一個(gè)包含恰當(dāng)?shù)?Authorization 頭信息的請(qǐng)求。如果當(dāng)前請(qǐng)求已經(jīng)包含了 Authorization 證書,那么401響應(yīng)代表著服務(wù)器驗(yàn)證已經(jīng)拒絕了那些證書。如果401響應(yīng)包含了與前一個(gè)響應(yīng)相同的身份驗(yàn)證詢問,且瀏覽器已經(jīng)至少嘗試了一次驗(yàn)證,那么瀏覽器應(yīng)當(dāng)向用戶展示響應(yīng)中包含的實(shí)體信息,因?yàn)檫@個(gè)實(shí)體信息中可能包含了相關(guān)診斷信息。
3、402 Payment Required:此響應(yīng)碼保留以便將來使用,創(chuàng)造此響應(yīng)碼的最初目的是用于數(shù)字支付系統(tǒng),然而現(xiàn)在并未使用。
4、403 Forbidden:服務(wù)器已經(jīng)理解請(qǐng)求,但是拒絕執(zhí)行它。
5、404 Not Found:請(qǐng)求失敗,請(qǐng)求所希望得到的資源未被在服務(wù)器上發(fā)現(xiàn)。沒有信息能夠告訴用戶這個(gè)狀況到底是暫時(shí)的還是永久的。假如服務(wù)器知道情況的話,應(yīng)當(dāng)使用410狀態(tài)碼來告知舊資源因?yàn)槟承﹥?nèi)部的配置機(jī)制問題,已經(jīng)永久的不可用,而且沒有任何可以跳轉(zhuǎn)的地址。404這個(gè)狀態(tài)碼被廣泛應(yīng)用于當(dāng)服務(wù)器不想揭示到底為何請(qǐng)求被拒絕或者沒有其他適合的響應(yīng)可用的情況下。
6、405 Method Not Allowed:請(qǐng)求行中指定的請(qǐng)求方法不能被用于請(qǐng)求相應(yīng)的資源。
7、406 Not Acceptable:請(qǐng)求的資源的內(nèi)容特性無法滿足請(qǐng)求頭中的條件,因而無法生成響應(yīng)實(shí)體。
8、407 Proxy Authentication Required:與401響應(yīng)類似,只不過客戶端必須在代理服務(wù)器上進(jìn)行身份驗(yàn)證。代理服務(wù)器必須返回一個(gè) Proxy-Authenticate 用以進(jìn)行身份詢問。客戶端可以返回一個(gè) Proxy-Authorization 信息頭用以驗(yàn)證。
9、408 Request Timeout:請(qǐng)求超時(shí)。客戶端沒有在服務(wù)器預(yù)備等待的時(shí)間內(nèi)完成一個(gè)請(qǐng)求的發(fā)送。客戶端可以隨時(shí)再次提交這一請(qǐng)求而無需進(jìn)行任何更改。
10、409 Conflict:由于和被請(qǐng)求的資源的當(dāng)前狀態(tài)之間存在沖突,請(qǐng)求無法完成。這個(gè)代碼只允許用在這樣的情況下才能被使用:用戶被認(rèn)為能夠解決沖突,并且會(huì)重新提交新的請(qǐng)求。該響應(yīng)應(yīng)當(dāng)包含足夠的信息以便用戶發(fā)現(xiàn)沖突的源頭。
11、410 Gone:被請(qǐng)求的資源在服務(wù)器上已經(jīng)不再可用,而且沒有任何已知的轉(zhuǎn)發(fā)地址。
12、411 Length Required:服務(wù)器拒絕在沒有定義 Content-Length 頭的情況下接受請(qǐng)求。在添加了表明請(qǐng)求消息體長(zhǎng)度的有效 Content-Length 頭之后,客戶端可以再次提交該請(qǐng)求。
13、412 Precondition Failed:服務(wù)器在驗(yàn)證在請(qǐng)求的頭字段中給出先決條件時(shí),沒能滿足其中的一個(gè)或多個(gè)。這個(gè)狀態(tài)碼允許客戶端在獲取資源時(shí)在請(qǐng)求的元信息(請(qǐng)求頭字段數(shù)據(jù))中設(shè)置先決條件,以此避免該請(qǐng)求方法被應(yīng)用到其希望的內(nèi)容以外的資源上。
14、413 Payload Too Large:服務(wù)器拒絕處理當(dāng)前請(qǐng)求,因?yàn)樵撜?qǐng)求提交的實(shí)體數(shù)據(jù)大小超過了服務(wù)器愿意或者能夠處理的范圍。此種情況下,服務(wù)器可以關(guān)閉連接以免客戶端繼續(xù)發(fā)送此請(qǐng)求。
15、414 URI Too Long:請(qǐng)求的URI 長(zhǎng)度超過了服務(wù)器能夠解釋的長(zhǎng)度,因此服務(wù)器拒絕對(duì)該請(qǐng)求提供服務(wù)。這比較少見,通常的情況包括:本應(yīng)使用POST方法的表單提交變成了GET方法,導(dǎo)致查詢字符串(Query String)過長(zhǎng)。
16、415 Unsupported Media Type:對(duì)于當(dāng)前請(qǐng)求的方法和所請(qǐng)求的資源,請(qǐng)求中提交的實(shí)體并不是服務(wù)器中所支持的格式,因此請(qǐng)求被拒絕。
17、416 Range Not **isfiable:如果請(qǐng)求中包含了 Range 請(qǐng)求頭,并且 Range 中指定的任何數(shù)據(jù)范圍都與當(dāng)前資源的可用范圍不重合,同時(shí)請(qǐng)求中又沒有定義 If-Range 請(qǐng)求頭,那么服務(wù)器就應(yīng)當(dāng)返回416狀態(tài)碼。
18、417 Expectation Failed:此響應(yīng)代碼意味著服務(wù)器無法滿足 Expect 請(qǐng)求標(biāo)頭字段指示的期望值。
19、418 I’m a teapot:服務(wù)器拒絕嘗試用 “茶壺沖泡咖啡”。
20、421 Misdirected Request:該請(qǐng)求針對(duì)的是無法產(chǎn)生響應(yīng)的服務(wù)器。 這可以由服務(wù)器發(fā)送,該服務(wù)器未配置為針對(duì)包含在請(qǐng)求 URI 中的方案和權(quán)限的組合產(chǎn)生響應(yīng)。
21、422 Unprocessable Entity (WebDAV (en-US)):請(qǐng)求格式良好,但由于語(yǔ)義錯(cuò)誤而無法遵循。
22、423 Locked (WebDAV (en-US)):正在訪問的資源被鎖定。
23、424 Failed Dependency (WebDAV (en-US)):由于先前的請(qǐng)求失敗,所以此次請(qǐng)求失敗。
24、425 Too Early:服務(wù)器不愿意冒著風(fēng)險(xiǎn)去處理可能重播的請(qǐng)求。
25、426 Upgrade Required:服務(wù)器拒絕使用當(dāng)前協(xié)議執(zhí)行請(qǐng)求,但可能在客戶機(jī)升級(jí)到其他協(xié)議后愿意這樣做。 服務(wù)器在 426 響應(yīng)中發(fā)送 Upgrade (en-US) 頭以指示所需的協(xié)議。
26、428 Precondition Required:原始服務(wù)器要求該請(qǐng)求是有條件的。
27、429 Too Many Requests:用戶在給定的時(shí)間內(nèi)發(fā)送了太多請(qǐng)求(“限制請(qǐng)求速率”)。
28、431 Request Header Fields Too Large:服務(wù)器不愿意處理請(qǐng)求,因?yàn)樗?請(qǐng)求頭字段太大( Request Header Fields Too Large)。 請(qǐng)求可以在減小請(qǐng)求頭字段的大小后重新提交。
29、451 Unavailable For Legal Reasons:用戶請(qǐng)求非法資源,例如:由政府審查的網(wǎng)頁(yè)。
五、服務(wù)端響應(yīng)
1、500 Internal Server Error:服務(wù)器遇到了不知道如何處理的情況。
2、501 Not Implemented:此請(qǐng)求方法不被服務(wù)器支持且無法被處理。只有GET和HEAD是要求服務(wù)器支持的,它們必定不會(huì)返回此錯(cuò)誤代碼。
3、502 Bad Gateway:此錯(cuò)誤響應(yīng)表明服務(wù)器作為網(wǎng)關(guān)需要得到一個(gè)處理這個(gè)請(qǐng)求的響應(yīng),但是得到一個(gè)錯(cuò)誤的響應(yīng)。
4、503 Service Unavailable:服務(wù)器沒有準(zhǔn)備好處理請(qǐng)求。 常見原因是服務(wù)器因維護(hù)或重載而停機(jī)。
6、504 Gateway Timeout:當(dāng)服務(wù)器作為網(wǎng)關(guān),不能及時(shí)得到響應(yīng)時(shí)返回此錯(cuò)誤代碼。
7、505 HTTP Version Not Supported:服務(wù)器不支持請(qǐng)求中所使用的HTTP協(xié)議版本。
8、506 Variant Also Negotiates:服務(wù)器有一個(gè)內(nèi)部配置錯(cuò)誤:對(duì)請(qǐng)求的透明內(nèi)容協(xié)商導(dǎo)致循環(huán)引用。
9、507 Insufficient Storage:服務(wù)器有內(nèi)部配置錯(cuò)誤:所選的變體資源被配置為參與透明內(nèi)容協(xié)商本身,因此不是協(xié)商過程中的適當(dāng)端點(diǎn)。
10、508 Loop Detected (WebDAV (en-US)):服務(wù)器在處理請(qǐng)求時(shí)檢測(cè)到無限循環(huán)。
11、510 Not Extended:客戶端需要對(duì)請(qǐng)求進(jìn)一步擴(kuò)展,服務(wù)器才能實(shí)現(xiàn)它。服務(wù)器會(huì)回復(fù)客戶端發(fā)出擴(kuò)展請(qǐng)求所需的所有信息。
12、511 Network Authentication Required:511 狀態(tài)碼指示客戶端需要進(jìn)行身份驗(yàn)證才能獲得網(wǎng)絡(luò)訪問權(quán)限。