開工大吉!
文檔君在開工第一天準(zhǔn)時(shí)跟大家見面啦~?讓我們用小知識(shí)激活一下工作狀態(tài)!橫掃404!做回自己!Let's Go!
404 Not Found
上網(wǎng)沖浪的時(shí)候,不管是“網(wǎng)頁迷路了”還是“網(wǎng)頁乘坐火箭飛向太空”,頁面都有一個(gè)神秘?cái)?shù)字“404”。相信對404,大部分人已經(jīng)不陌生了。一旦它出現(xiàn),就意味著:我們想要訪問的頁面找不到了。
那么,404到底是什么?又是什么原因?qū)е?04的發(fā)生呢?
其實(shí),404是網(wǎng)頁服務(wù)器無法找到用戶請求的文檔時(shí)發(fā)出的HTTP(Hyper Text Transfer Protocol,超文本傳輸協(xié)議)狀態(tài)碼。出現(xiàn)404頁面就是為了提醒用戶網(wǎng)頁發(fā)生了錯(cuò)誤。?導(dǎo)致這種錯(cuò)誤發(fā)生的原因可能是:
網(wǎng)頁數(shù)據(jù)被更改、或者上傳到網(wǎng)頁的文件目錄/文件名稱被更改,導(dǎo)致網(wǎng)頁失效。
網(wǎng)頁文件被移動(dòng)或刪除,導(dǎo)致原鏈接失效。
我們自己輸入的網(wǎng)址有錯(cuò)誤,不能鏈接到所需的文件。
你壓根沒插網(wǎng)線或者家里Wi-Fi信號太差。
總之,404就是網(wǎng)頁向你發(fā)出了“此路不通”的信號。
502?Bad?Gateway
除了404,還有一個(gè)最常見的HTTP狀態(tài)碼——502。之前某站不能訪問的時(shí)候,網(wǎng)友們紛紛發(fā)聲:剛開始頁面出現(xiàn)404以為是自己的原因,后來刷出來502,知道不是自己的原因就放心了。
因?yàn)?02代碼表示內(nèi)部網(wǎng)絡(luò)故障或設(shè)置問題,即內(nèi)部網(wǎng)絡(luò)擁塞。
通常是網(wǎng)絡(luò)內(nèi)部存在大量的數(shù)據(jù)調(diào)用或交互時(shí),網(wǎng)頁內(nèi)容提供方的一個(gè)或兩個(gè)服務(wù)器,由于性能缺陷或程序錯(cuò)誤,無法正常運(yùn)行,使得網(wǎng)頁上的內(nèi)容無法被傳輸?shù)接脩舻臑g覽器上。
說人話就是服務(wù)器崩了、網(wǎng)站掛了。此種情況在搶票、某個(gè)熱點(diǎn)事件爆發(fā)時(shí)都很常見。。。?這個(gè)時(shí)候我們能做的就是刷新網(wǎng)頁、重新打開頁面、以及耐心的等待。?由此可知,404和502這兩種HTTP狀態(tài)碼在本質(zhì)上是有很大不同的,下面我們繼續(xù)了解下其它HTTP狀態(tài)碼。
HTTP狀態(tài)碼
超文本傳輸協(xié)議HTTP本身是一個(gè)簡單的請求-響應(yīng)協(xié)議,規(guī)定了網(wǎng)頁服務(wù)器和瀏覽器之間的信息傳遞規(guī)范。HTTP狀態(tài)碼(HTTP Status Code)是網(wǎng)頁服務(wù)器響應(yīng)信息的一部分,是用來表示超文本傳輸協(xié)議響應(yīng)狀態(tài)的3位數(shù)字代碼。
當(dāng)你訪問一個(gè)網(wǎng)頁時(shí),瀏覽器會(huì)向網(wǎng)頁所在服務(wù)器發(fā)出請求。該網(wǎng)頁所在的服務(wù)器接收和解釋請求消息之后,會(huì)返回一個(gè)包含HTTP狀態(tài)碼的響應(yīng)信息用以響應(yīng)瀏覽器的請求。
我們訪問網(wǎng)頁時(shí),服務(wù)器都會(huì)通過HTTP狀態(tài)碼向我們傳達(dá)簡單的信息。狀態(tài)碼既可以指明具體請求是否已成功,又可以揭示請求失敗的確切原因。
常見狀態(tài)碼
HTTP狀態(tài)碼被記錄在服務(wù)器日志中,同時(shí)也可能在客戶端顯示,就是打開頁面出錯(cuò)時(shí),瀏覽器顯示的錯(cuò)誤信息代碼,比如大家看到的404或502。
狀態(tài)碼的第一個(gè)數(shù)字代表了服務(wù)器響應(yīng)的狀態(tài),目前常見的響應(yīng)狀態(tài)有5種。
除了前面提到的404和502,以下9個(gè)常見的狀態(tài)碼應(yīng)該能讓你對狀態(tài)碼有更直觀的感受。
100?Continue(繼續(xù))
客戶端已接收部分請求,并準(zhǔn)備好接收剩下的部分,請求者需要繼續(xù)提出請求。
200?OK(請求成功)
服務(wù)器已成功處理了請求,可以正常打開網(wǎng)頁啦(或者請求的文件)。
206?Partial Content(部分內(nèi)容)
服務(wù)器成功處理了部分GET請求。HTTP下載工具(比如迅雷)都是使用這類響應(yīng)實(shí)現(xiàn)斷點(diǎn)續(xù)傳或者將一個(gè)大文檔分解為多個(gè)下載段同時(shí)下載的。
301 Moved Permanently(永久移動(dòng))
被請求的資源已永久移動(dòng)到新位置,響應(yīng)信息中會(huì)包括新的URI(Uniform Resource Identifier,統(tǒng)一資源標(biāo)識(shí)符),瀏覽器會(huì)自動(dòng)定向到新URI。今后任何對此資源的請求都應(yīng)使用新的URI代替。
302 Found(發(fā)現(xiàn))
服務(wù)器要求客戶端執(zhí)行臨時(shí)重定向(原始描述短語為“Moved Temporarily”)。服務(wù)器臨時(shí)從不同位置的網(wǎng)頁響應(yīng)請求,但是這樣的重定向是臨時(shí)的,之后的請求客戶端仍應(yīng)向原有地址發(fā)送。
400 Bad Request(錯(cuò)誤請求)
服務(wù)器通過返回400錯(cuò)誤告訴客戶端,客戶端的請求語法出錯(cuò),服務(wù)器端無法理解。
401 Unauthorized(未經(jīng)授權(quán))
服務(wù)器要求客戶端進(jìn)行身份驗(yàn)證,錯(cuò)誤的登錄嘗試是導(dǎo)致這一錯(cuò)誤的主要原因。
403 Forbidden(禁止訪問)
服務(wù)器理解了你的請求,但是拒絕執(zhí)行。任何登錄對403錯(cuò)誤都不起作用,嘗試訪問被禁止的網(wǎng)站目錄時(shí),就會(huì)發(fā)生403錯(cuò)誤。
500 Internal Server Error(內(nèi)部服務(wù)器錯(cuò)誤)
服務(wù)器內(nèi)部的錯(cuò)誤導(dǎo)致無法完成請求,一般來說,可能是服務(wù)器的程序碼出錯(cuò)。例如,網(wǎng)頁服務(wù)器過載時(shí)將無法正確處理訪問請求。
簡單來說,1、2、3開頭的狀態(tài)碼我們不用關(guān)心,4、5開頭的稍微留意下就行了。
如果看到這里你對狀態(tài)碼還有興趣,文檔君整理了一份狀態(tài)碼清單,可以了解一下哦~~