「404未找到」可能是網絡上最知名的錯誤信息,但這組數字具體是什麼意思呢?
在1992年的時候,全球資訊網聯盟建立了一套超文本傳輸協議狀態代碼,即伺服器用於響應客戶端請求的代碼。代碼共分為五大類,根據特定請求的結果來使用它們。
舉個例子,假設你打開連結要瀏覽XYZ.com網站上的一篇文章,當你點擊這個連結時,你的瀏覽器會向網站伺服器發送請求,同時也將你的IP位址你目前使用的瀏覽器、你輸出的內容等信息發送出去。如果伺服器收到、解析並接受你的請求,它就將你所請求的內容和一個狀態代碼一起發送過來,以代碼「200 OK」為例,你無法看到這段代碼,因為你的瀏覽器通常只顯示它接收到的內容。
不過,如果情況有所不同,比如這個伺服器碰到一種特殊問題,這個代碼就可見了。上面會顯示」404未找到」,具體來說這個狀態代碼意味著伺服器能夠接收到請求,但是它無法找到所請求的內容。第一個數字表示客戶端錯誤,比如一個錯誤的網址,伺服器基本在表示無法理解錯誤的語法請求,但允許經過修改後提出後續請求。後面兩位數字表示該類錯誤的具體類型,所以在這裡」04″代表著伺服器找不到任何與請求匹配的內容,並無法得知這種情況是暫時還是永久的。「未找到」只是一個由HTTP規範定義的能讓一般人理解的解釋用語,但是這部分可以被修改甚至去掉。
404狀態代碼本質上相當模糊,這就是為什麼它普遍用於伺服器無法給出請求被拒的確切原因或是沒有其他可應用響應時。比如當頁面已被刪除,伺服器通常會顯示404。實際上在這種情況下,最合適的狀態代碼應該是「410不存在」。
Web伺服器顯示自定義的404頁面是很常見的事情,頁面可能包括網站的品牌、附加信息和建議,還有一種叫做」軟 404″的東西。這個詞語被用來表示可被普遍接受的虛假的404,它描述了伺服器雖然顯示404頁面,但無法使用匹配的響應代碼進行響應的情況,所以伺服器將發出200狀態碼來替代404。其實實際上表示可以正常訪問,谷歌稱這個頁面為掛著寫了「狗」的名牌的長頸鹿,不能僅僅因為名牌上說它是一隻狗就認為它是一隻狗。
如今 404不僅用於伺服器客戶端通信。英國於2008年的一項研究表明 404 成為無知的一個俚語同義詞,劍橋大學出版社目前把404的文字版本作為形容詞收錄於其網站上,用於描述不知如何在計算機上使用電子郵件的笨蛋,而柯林斯詞典以數字形式列出404作為用於描述愚蠢或無能之人的名詞。謠傳說404是CERN的房間總數,而蒂姆·伯納·李在此發明了全球資訊網,然而事實證明這件事是虛構的。在CERN房間編號系統,第一個數字通常表示建築物編號,而餘下的表示辦公室編號。據在那裡的人說,4號樓辦公室的編碼實際上是從410開始的,並一直向上遞增,所以4號樓實際上沒有4號辦公室,或者你可以說404號辦公室未找到。
說了這麼多關於「404」狀態碼的信息,讓大家了解一下其他的吧,如果有興趣可以單獨去網上搜索一下代碼的具體信息。以下是http協議的狀態碼:
100(繼續)、101(切換協議)
200(成功)、201(已創建)、202(已接受)、203(非授權信息)、204(無內容)、205(重置內容)、206(部分內容)
300(多種選擇)、301(永久移動)、302(臨時移動)、303(查看其他位置)、304(未修改)、305(使用代理)、307(臨時重定向)
400(錯誤請求)、401(未授權)、403(禁止)、404(未找到)、405(方法禁用)、406(不接受)、407(需要代理授權)、408(請求超時)、409(衝突)、410(已刪除)、411(需要有效長度)、412(未滿足前提條件)、413(請求實體過大)、414(請求的 URI 過長)、415(不支持的媒體類型)、416(請求範圍不符合要求)、417(未滿足期望值)
500(伺服器內部錯誤)、501(尚未實施)、502(錯誤網關)、503(服務不可用)、504(網關超時)、505(HTTP 版本不受支持)
用文化溫暖人心,讓知識完善自己,一起遇見美好的自己。如果喜歡點擊「關注」,每天帶你了解新知識!