複製鏈接
請複製以下鏈接發送給好友

404 not found

(HTTP返回代碼,一種錯誤代碼頁)

鎖定
404 not found,是HTTP網頁錯誤情況返回的一種狀態碼,當用户在瀏覽器中輸入網址時,服務器會根據輸入的地址判斷是否有對應的網頁信息,如果沒有對應信息,説明用户輸入的可能是一串無效的鏈接,服務器就會向用户返回404 not found狀態碼,告訴用户沒有找到對應的網頁信息。
HTTP協議的錯誤信息在不同軟件、不同的語言描述可能不同,但是其代碼是統一的,以便瀏覽器能夠正確識別和處理。
HTTP 404404 Not Found錯誤消息是HTTP的其中一種“標準迴應消息”(HTTP狀態碼),此消息代表客户端在瀏覽網頁時,服務器無法正常提供消息,或是服務器無法迴應且不知原因。通常是因為用户所訪問的對應網頁已被刪除被移動或從未存在。404也是互聯網上最常見的錯誤之一。404錯誤消息可能與“server not found”(無法找到服務器)或其他類似消息產生混淆。
外文名
404 not found
概    括
一種錯誤代碼頁
實    質
代碼的正確識別和處理

404 not found概要

客户端使用HTTP瀏覽網頁時,服務器需要針對不同的“要求”提供不同的“迴應”,譬如瀏覽器發出HTML文件(網頁)的要求,並帶有數字迴應碼和MIME的消息。代碼404的第一個“4”代表客户端的錯誤,如錯誤的URL;後兩位數字碼則代表着特定的錯誤消息。HTTP的三字符代碼跟早期通信協議FTPNNTP的代碼相當類似。
從HTTP的層面來看,404消息碼之後通常會有一個可讀的消息“Not Found”,許多網絡服務器的默認頁面也都有“404”代碼跟“Not Found”的詞彙。
404錯誤消息通常是在目標頁面被更動或移除之後顯現的頁面。在第一種情況下,最好通過返回301 Moved Permanently響應進行URL映射或URL重定向,該響應可以在大多數服務器配置文件中配置,或者通過URL重寫;在第二種情況下,應返回410 Gone。因為此兩種消息需要特別架構的服務器,許多網站並不使用。

404 not found軟404

一些網站會以“200 OK”的迴應消息來回復“Not Found”的錯誤,錯誤地報告該頁面已正確加載,稱為軟404(soft 404)。軟404對於鏈接是否存在的判斷對搜索引擎的抓取是有極大影響的,雅虎和谷歌會使用自動化工具來檢測軟404。

404 not found定製404頁面

網頁服務器通常可以配置自定義的404錯誤頁面,包括對用户更友好的描述,站點標識,有時還包括站點地圖,搜索表單或404頁面小部件。
Internet Explorer版本5以上不會顯示自定義404頁面,而是默認顯示友好錯誤頁面,除非頁面大於512字節。
越來越多的網站喜歡裝飾404頁面,如Metro UK的404頁面展示了一隻踩滑板的北極熊圖片,Web開發機構Left Logic的404錯誤頁面則嵌入了一個簡單的繪圖程序。部分網站也利用404頁面展示公益廣告,如尋找失蹤兒童 [1] 

404 not found大眾文化

2008年,英國皇家郵政電信部門進行了一項研究發現,“404”在俚語中用來描述“愚笨、無用之人”。據俚語詞典編撰者喬納森·格林(Jonathon Green)稱,“404”能作為俚語很大程度上受新世代接觸互聯網的年輕人推動的,但這種用法僅限於倫敦和其它大城市地區
2013年,404 Not Found成為中國大陸的網絡熱詞。在中國,404被大部分網民普遍用作網站被防火長城屏蔽的代名詞。而事實上,由於防火長城一般的封鎖方法是向連接兩端的計算機發送RST(Reset)數據包乾擾兩者間正常的TCP連接,被防火長城屏蔽的網站無法回覆任何HTTP狀態碼,最常見的錯誤信息是“連接已被重置”。

404 not found代碼釋義

404 not found,是一種標準的HTTP返回代碼。當用户輸入一個鏈接時,服務器上的IIS(Internet信息服務)會首先檢測用户輸入的地址鏈接是否有對應的網頁信息,如果沒有對應的網頁信息,説明用户輸入的是一串無效的鏈接,這時IIS就會通過服務器向終端用户發送404錯誤代碼頁提示,告訴用户找不到與該地址鏈接對應的網頁信息。 [2] 
通常網站出現404 not found提示,就是告訴網站的使用者,這個頁面不存在、未找到。

404 not found出現原因

正常的網站如果沒有改版或者其他特殊操作不會存在404 not found問題,如果問題出現,那麼很簡單,可能你的網站存在異常的操作,出現404 not found的原因主要有以下幾個:
1、網站出現改版,比如説更換網站程序、數據庫對不上等,這樣很多網頁內容可能存在找不到的現象,即死鏈接。又比如網站更換服務器,部分靜態文件沒有複製到新的服務器上,或者是因為新服務器的文件夾權限問題導致文件沒有讀取權限,因此出現404 not found問題。
2、網站被黑客攻擊導致網站部分文件或者全部文件損失,也會出現404 not found的錯誤頁面提示,這種情況比較少見。
3、某個目錄刪除,導致404not found錯誤頁面提示。比如某篇文章因為版權問題,人為刪除,但已被搜索引擎收錄,當用户搜索這篇文章、打開的時候即會出現404錯誤提示。
4、因為動態規則變更,導致頁面出現404not found錯誤也比較常見。當一個動態頁面因為偽靜態規則變更,會有可能導致URL的變更,那麼前面的URL將會失效,當我們規則變更以後還打開前面的URL自然會出現404not found錯誤提示。 [3] 
5、用户輸入的地址鏈接有誤,導致IIS提示404 not found。
6、DNS設置阻止,就中文環境而言,國外有一些被禁網站在中國瀏覽同樣會出現404 not found的現象,這需要使用代理服務器才可以正常瀏覽。

404 not found作用及影響

作用:
網站設置一個404not found頁面,是相當有必要的,一則可以提升網站的用户體驗,二則能幫助減少用户流失。
影響:
1、網站如果404錯誤頁面過多,搜索引擎會認為網站處於改版或者被惡意攻擊的狀況,會對網站進行降權處理,等待恢復後會將網站進行提高權重。
2、當用户打開網站,點擊一個鏈接出現錯誤頁面,點擊第二鏈接還是出現同樣的問題,這樣很不利於用户體驗,用户可能會認為站點是垃圾網站,導致很多鏈接打不開,那麼會增加網站的跳出率。

404 not found解決方法

出現404not found頁面不要慌,切記不能丟在那裏不管,最好是當天解決,那麼如何解決404錯誤頁面的提示呢?方法無非就是兩個,要麼恢復頁面,要麼把頁面徹底刪除!
  1. 對於存在的網頁內容,由於路徑改變而導致無法訪問時,可在IIS 中定義404錯誤指向一個動態頁面,在頁面裏面使用301永久重定向跳轉到新的地址,此時服務器返回301狀態碼。
  2. 設置404指向一個設計好的html文件,此時頁面返回的404狀態碼。 通常idc提供商基本都提供404設置的功能,直接上傳文件設置即可。在IIs中設置方法:打開IIS管理器-->點擊要設置自定義404的網站的屬性-->點擊自定義錯誤選項-->選中404頁-->選中並打開編輯屬性-->設置成 URL --> URL 裏填寫“/err404.html”-->按確定退出再把做好的err404.html 頁面上傳到網站根目錄下。此處在“消息類型”中一定要選擇“文件”或“默認值”,而不要選擇“URL”,不然,將導致返回“200”狀態碼。
  3. 404指向一個動態頁面,比如error.asp,如果不在頁面裏面進行設置,僅僅是返回提示的HTML 代碼,將導致頁面返回200 狀態碼,這是不正確的,我們可以在顯示完提示內容後,增加語句: Response.Status="404 Not Found" ,這樣就保證頁面返回404狀態碼。
  4. Apache下設置404錯誤頁面。為Apache Server設置404錯誤頁面的方法很簡單,只需在.htaccess 文件中加入如下內容即可,ErrorDocument 404 /notfound.php 如何製作404頁面
參考資料