技術支持
- 發表時間:2018/5/25 12:04:02
- 來源:
- 分類:使用幫助
HTTP狀態碼是用以表示網頁服務器HTTP響應狀態的3位數字代碼,我們常見的404 not found就是其中之一,代表網頁丟失。其實每一個HTTP狀態碼都有它的規律及特定含義,而了解一些常見的狀態碼也有利于以后我們在瀏覽頁面遇到問題時,及時了解問題所在。
2XX的響應結果表明請求被正常處理了:
1,200 OK:表示從客戶端發來的請求在服務器端被正常處理了。注意的是,在響應報文內,隨狀態碼一起返回的信息回因方法的不同而發生改變。
2,204 No Content:該狀態碼代表服務器接收的請求已成功處理,但在返回的響應報文中不含實體的主體部分。另外,也不允許返回任何實體的主體。
3,206 Partial Content:該狀態碼表示客戶端進行了范圍請求,服務器也成功執行了這部分的GET請求。響應報文中包含由Content-Range指定范圍的實體內容。
3XX響應結果表明瀏覽器需要執行某些特殊的處理以正確處理請求:
1,301 Moved Permanently:永久性重定向。該狀態碼表示請求的資源已被分配了新的URI,以后應使用資源現在所指的URI。
2,302 Found:臨時性重定向。該狀態碼表示請求的資源已被分配了新的URI,希望用戶(本次)能使用新的URI訪問。但是與301狀態碼不同的是已移動的資源對應的URI將來還有可能發生改變。
3,303 See Other:該狀態碼表示由于請求對應的資源存在著另一個URI,應使用GET方法定向獲取請求的資源。當301、302、303響應狀態碼返回時,幾乎所有的瀏覽器都會把POST改成GET,并刪除請求報文內的主體,之后請求會自動再次發送。
4,304 Not Modified:該狀態碼表示客戶端發送附帶條件的請求時,服務器端允許請求訪問資源,但未滿足條件的情況。304狀態碼返回時,不包含任何響應的主體部分。304被劃分在3XX類別中,但和重定向沒有關系。
5,307 Temporary Redirect:臨時重定向。該狀態碼和302 Found有著相同的含義。盡管302標準禁止POST改為GET,但實際使用時大家并不遵守。但是307會遵照瀏覽器標準,不會從POST變成GET。但是,對于處理響應時的行為,每種瀏覽器有可能出現不同情況。
4XX的響應結果表明客戶端是發生錯誤的原因所在:
1,400 Bad Request:該狀態碼表示請求報文中存在語法錯誤。
2,401 Unauthorized:該狀態碼表示發送的請求需要有通過HTTP認證(BASIC認證、DIGEST認證)的認證信息。另外,若之前已進行過一次請求,則表示擁護認證失敗。返回含有401的響應必須包含一個適用于被請求資源的WWW-Authenticate首部用以質詢用戶信息。當瀏覽器初次接收到401響應,會彈出認證用的對話窗口。
3,403 Forbidden:該狀態碼表示對請求資源的訪問被服務器拒絕了。服務器端沒有必要給出拒絕的詳細理由,但是如果想作說明,可以在實體的主體部分對原因進行詳述。
4,404 Not Found:該狀態碼表明服務器上無法找到請求的資源。除此之外,也可以在服務器端被拒絕請求且不想說明理由時使用。
5XX的響應結果表明服務器本身發生錯誤:
1,500 Internal Server Error:該狀態碼表明服務器端在執行請求時發生了錯誤。也有可能是Web應用存在的Bug或某些臨時的故障。
2,503 Service Unavailable:該狀態碼表明服務器臨時處于超負載貨正在進行停機維護,現在無法處理請求。如果事先得知解除以上狀態需要的時間,最好寫入Retry-After首部字段再返回給客戶端。
HTTP狀態碼還與SEO有著密切關聯:網站日志會記錄下HTTP狀態碼,因而查看網站日志里的HTTP狀態碼,便能清楚地看到網站服務器與客戶端之間的信息交換情況,而這個客戶端,既可以是用戶瀏覽器也可以是搜索引擎或其他爬取工具(如RSS)。因此,對SEO而言HTTP狀態碼的重要意義在于,通過它我們可以查看搜索引擎在你網站的爬取情況。