觸屏版
全國(guó)服務(wù)熱線:0571-87205688
登錄
注冊(cè)
客戶中心
關(guān)注云客
最近這段時(shí)間一直忙于整理網(wǎng)站的錯(cuò)誤頁(yè)面,期間整理了很多關(guān)于404 Not Found錯(cuò)誤頁(yè)面的知識(shí),加之最近也在幫團(tuán)隊(duì)新來(lái)的人員培訓(xùn)SEO優(yōu)化知識(shí),所以在此借助博客的平臺(tái)就拿出來(lái)跟大家一起分享一下。
據(jù)說(shuō)在第三次科技革命之前,互聯(lián)網(wǎng)的形態(tài)就是一個(gè)大型的中央數(shù)據(jù)庫(kù),這個(gè)數(shù)據(jù)庫(kù)就設(shè)置在404房間里面。那時(shí)候所有的請(qǐng)求都是由人工手動(dòng)完成的,如果在數(shù)據(jù)庫(kù)中沒(méi)有找到請(qǐng)求者所需要的文件,或者由于請(qǐng)求者寫(xiě)錯(cuò)了文件編號(hào),用戶就會(huì)得到一個(gè)返回信息:room 404 : file not found。后來(lái)互聯(lián)網(wǎng)興起后,人們也就習(xí)慣了用404作為服務(wù)器未找到文件的錯(cuò)誤代碼了。當(dāng)然實(shí)際考證傳說(shuō)中的room 404是不存在的。
一、404 Not Found是什么意思?
404頁(yè)面就是當(dāng)用戶訪問(wèn)某網(wǎng)站時(shí),點(diǎn)擊了錯(cuò)誤的鏈接時(shí),所返回的頁(yè)面。最常見(jiàn)的出錯(cuò)提示:404 Not Found。其目的就是告訴瀏覽者其所請(qǐng)求的頁(yè)面不存在或鏈接錯(cuò)誤,同時(shí)引導(dǎo)用戶使用網(wǎng)站其他頁(yè)面而不是關(guān)閉窗口離開(kāi)。錯(cuò)誤頁(yè)面的文字可以自定義,有些網(wǎng)站沒(méi)有設(shè)置404錯(cuò)誤頁(yè)面,或者是直接采取的跳轉(zhuǎn)到首頁(yè),這樣一般都說(shuō)對(duì)搜索引擎不是很友好。
HTTP 404或Not Found錯(cuò)誤信息是HTTP的其中一種 標(biāo)準(zhǔn)回應(yīng)信息 (HTTP狀態(tài)碼),此信息代表客戶端在瀏覽網(wǎng)頁(yè)時(shí),服務(wù)器無(wú)法正常提供信息,或是服務(wù)器無(wú)法回應(yīng)且不知原因。404錯(cuò)誤信息可能與 server not found (無(wú)法找到服務(wù)器)或其他類似信息產(chǎn)生混淆。
二、404錯(cuò)誤頁(yè)面對(duì)網(wǎng)站的影響
404頁(yè)面是網(wǎng)站必備的一個(gè)頁(yè)面,它承載著用戶體驗(yàn)與SEO優(yōu)化的重任。404頁(yè)面通常為用戶訪問(wèn)了網(wǎng)站上不存在或已刪除的頁(yè)面,服務(wù)器返回的404錯(cuò)誤。如果站長(zhǎng)沒(méi)有設(shè)置404頁(yè)面,會(huì)出現(xiàn)死鏈接,蜘蛛爬行這類網(wǎng)址時(shí),不利于搜索引擎收錄。
可以說(shuō),404錯(cuò)誤頁(yè)面是增強(qiáng)用戶體驗(yàn)的很好的做法,但發(fā)現(xiàn)很多站長(zhǎng)在應(yīng)用過(guò)程中往往并未注意到對(duì)搜索引擎的影響,譬如:錯(cuò)誤的服務(wù)器端配置導(dǎo)致返回 404 狀態(tài)碼或自定義404錯(cuò)誤頁(yè)面使用Meta Refresh導(dǎo)致返回 302 狀態(tài)碼。
正確設(shè)置的自定義404錯(cuò)誤頁(yè)面,不僅應(yīng)當(dāng)能夠正確地顯示,同時(shí),應(yīng)該返回 404 錯(cuò)誤代碼,而不是 200 或 302 。雖然對(duì)訪問(wèn)的用戶而言,HTTP狀態(tài)碼究竟是 404 還是 200 來(lái)說(shuō)并沒(méi)有什么區(qū)別,但對(duì)搜索引擎這則是相當(dāng)重要的。對(duì)這點(diǎn)大家可以查看博客的《》,文章中有具體詳細(xì)的介紹。
總的來(lái)說(shuō),搜索引擎蜘蛛在請(qǐng)求某個(gè)URL時(shí)得到 404 狀態(tài)回應(yīng)時(shí),即知道該URL已經(jīng)失效,便不再索引該網(wǎng)頁(yè),并向數(shù)據(jù)中心反饋將該URL表示的網(wǎng)頁(yè)從索引數(shù)據(jù)庫(kù)中刪除,當(dāng)然,刪除過(guò)程有可能需要很長(zhǎng)時(shí)間;而當(dāng)搜索引擎得到 200 狀態(tài)碼時(shí),則會(huì)認(rèn)為該url是有效的,便會(huì)去索引,并會(huì)將其收錄到索引數(shù)據(jù)庫(kù),這樣的結(jié)果便是這兩個(gè)不同的url具有完全相同的內(nèi)容:自定義404錯(cuò)誤頁(yè)面的內(nèi)容,這會(huì)導(dǎo)致出現(xiàn)復(fù)制網(wǎng)頁(yè)問(wèn)題。輕則被搜索引擎降權(quán),重則會(huì)K掉網(wǎng)站。
三、導(dǎo)致404 Not Found錯(cuò)誤頁(yè)面的原因
HTTP 404錯(cuò)誤意味著鏈接指向的網(wǎng)頁(yè)不存在,即原始網(wǎng)頁(yè)的URL失效,這種情況經(jīng)常會(huì)發(fā)生,很難避免,當(dāng)Web服務(wù)器接到類似請(qǐng)求時(shí),會(huì)返回一個(gè)404 狀態(tài)碼,告訴瀏覽器要請(qǐng)求的資源并不存在。其導(dǎo)致這個(gè)錯(cuò)誤的原因一般來(lái)說(shuō)有幾種情況:
1、無(wú)法在所請(qǐng)求的端口上訪問(wèn)Web站點(diǎn)。
2、Web服務(wù)擴(kuò)展鎖定策略阻止本請(qǐng)求。
3、MIME映射策略阻止本請(qǐng)求。
4、網(wǎng)站更新改版,但某些局部板塊沿用原來(lái)的模塊,而原有的模塊調(diào)用的文件已經(jīng)被刪除或轉(zhuǎn)移了路徑。
5、跟蹤訪問(wèn)的各類腳碼或CSS文件無(wú)效但調(diào)用代碼依然存在。
6、某個(gè)目錄直接刪除(導(dǎo)致一段時(shí)間該目錄的文件在被爬行時(shí)全部報(bào)404 Not Found錯(cuò)誤)
7、網(wǎng)頁(yè)URL生成規(guī)則改變、網(wǎng)頁(yè)文件更名或移動(dòng)位置、導(dǎo)入鏈接拼寫(xiě)錯(cuò)誤等,導(dǎo)致原來(lái)的URL地址無(wú)法訪問(wèn)
四、404頁(yè)面的使用誤區(qū)
雖然404錯(cuò)誤頁(yè)面是為了用戶體驗(yàn)而顯示的一個(gè)錯(cuò)誤頁(yè)面引導(dǎo)的作用,并不參與網(wǎng)站的排名。但是錯(cuò)誤的使用404頁(yè)面,也會(huì)導(dǎo)致網(wǎng)站的被降權(quán),比如以下2種情況:
1、錯(cuò)誤的服務(wù)器端配置導(dǎo)致404錯(cuò)誤頁(yè)面返回 200 狀態(tài)碼
當(dāng)搜索引擎蜘蛛在請(qǐng)求某個(gè)URL時(shí)得到 404 狀態(tài)回應(yīng)時(shí),即知道該URL已經(jīng)失效,便不再索引該網(wǎng)頁(yè),并向數(shù)據(jù)中心反饋將該URL表示的網(wǎng)頁(yè)從索引數(shù)據(jù)庫(kù)中刪除,當(dāng)然,刪除過(guò)程有可能需要很長(zhǎng)時(shí)間;而當(dāng)搜索引擎得到 200 狀態(tài)回應(yīng)時(shí),則會(huì)認(rèn)為該url是有效的,便會(huì)去索引,并會(huì)將其收錄到索引數(shù)據(jù)庫(kù),這樣的結(jié)果便是這兩個(gè)不同的url具有完全相同的內(nèi)容:自定義404錯(cuò)誤頁(yè)面的內(nèi)容,這會(huì)導(dǎo)致出現(xiàn)復(fù)制網(wǎng)頁(yè)問(wèn)題。對(duì)搜索引擎而言,特別是Google,不但很難獲得信任指數(shù)TrustRank,也會(huì)大大降低搜索引擎對(duì)網(wǎng)站質(zhì)量的評(píng)定。
2、自定義404錯(cuò)誤頁(yè)面使用Meta Refresh導(dǎo)致返回 302 狀態(tài)碼
常??吹皆S多網(wǎng)站的自定義404錯(cuò)誤頁(yè)面采取類似這樣的形式:首先顯示一段錯(cuò)誤信息,然后通過(guò)Meta Refresh將頁(yè)面跳轉(zhuǎn)到網(wǎng)站首頁(yè)、網(wǎng)頁(yè)地圖或其他類似頁(yè)。根據(jù)具體實(shí)現(xiàn)方式不同,這類404頁(yè)面可能返回 200 狀態(tài)碼,也可能返回 302 ,但不論哪種,從SEO技術(shù)角度看,均是一種錯(cuò)誤的選擇。
對(duì) 200 狀態(tài)的情況我們上面已經(jīng)談過(guò),那么,當(dāng)404頁(yè)面返回 302 時(shí),搜索引擎會(huì)怎么對(duì)待呢?從理論上說(shuō),對(duì) 302 錯(cuò)誤,搜索引擎認(rèn)為該網(wǎng)頁(yè)是存在的,只不過(guò)臨時(shí)改變了地址,仍然會(huì)索引收錄該頁(yè),這樣,同樣會(huì)出現(xiàn)類似于 200 狀態(tài)碼時(shí)的重復(fù)文本問(wèn)題;其次,以google為代表的主流搜索引擎對(duì)302重定向的適用范圍要求越來(lái)越嚴(yán)格,這類不當(dāng)使用302重定向的情況存在很大的風(fēng)險(xiǎn)。
五、解決404 not found錯(cuò)誤的方法
1、對(duì)于存在的網(wǎng)頁(yè)內(nèi)容由于路徑改變而導(dǎo)致訪問(wèn)不了時(shí),可在IIS 中定義404錯(cuò)誤指向一個(gè)動(dòng)態(tài)頁(yè)面,在頁(yè)面里面使用301永久重定向跳轉(zhuǎn)到新的地址,此時(shí)服務(wù)器返回301狀態(tài)碼。
2、設(shè)置404指向一個(gè)設(shè)計(jì)好的html 文件,此時(shí)頁(yè)面返回的404狀態(tài)碼。 現(xiàn)在的idc提供商基本都提供404設(shè)置的功能,直接上傳文件設(shè)置即可。在IIs中設(shè)置方法:打開(kāi)IIS管理器-- 點(diǎn)擊要設(shè)置自定義404的網(wǎng)站的屬性-- 點(diǎn)擊自定義錯(cuò)誤選項(xiàng)-- 選中404頁(yè)-- 選中并打開(kāi)編輯屬性-- 設(shè)置成 URL -- URL 里填寫(xiě) /err404.html -- 按確定退出再把做好的err404.html 頁(yè)面上傳到網(wǎng)站根目錄下。此處在 消息類型 中一定要選擇 文件 或 默認(rèn)值 ,而不要選擇 URL ,不然,將導(dǎo)致返回 200 狀態(tài)碼。
3、把404指向一個(gè)動(dòng)態(tài)頁(yè)面,比如error.asp,如果不在頁(yè)面里面進(jìn)行設(shè)置,僅僅是返回提示的HTML 代碼,將導(dǎo)致頁(yè)面返回200 狀態(tài)碼,這是不正確的,我們可以在顯示完提示內(nèi)容后,增加語(yǔ)句:Response.Status= 404 Not Found ,這樣就保證頁(yè)面返回404狀態(tài)碼。
4、Apache下設(shè)置404錯(cuò)誤頁(yè)面。為Apache Server設(shè)置404錯(cuò)誤頁(yè)面的方法很簡(jiǎn)單,只需在.htaccess 文件中加入如下內(nèi)容即可,ErrorDocument 404 /notfound.php。
六、如何制作404頁(yè)面
對(duì)于404頁(yè)面的制作,常規(guī)來(lái)說(shuō)分以下兩種情況:
1、Apache
為Apache Server設(shè)置404錯(cuò)誤頁(yè)面的方法很簡(jiǎn)單,只需:
(1)、在.htaccess文件中加入如下內(nèi)容:ErrorDocument 404 /notfound.php,將.htaccess文件上傳到網(wǎng)站根目錄。
(2)、制作一個(gè)404頁(yè)面,隨便您設(shè)計(jì),命名為notfound.php,同樣上傳到網(wǎng)站根目錄。
博客提醒大家一定要注意以下2點(diǎn):
(1)、切記不要將404錯(cuò)誤轉(zhuǎn)向到網(wǎng)站主頁(yè),否則可能會(huì)出現(xiàn)主頁(yè)在搜索引擎中消失的情況。
(2)、切記不要使用絕對(duì)URL,如果使用絕對(duì)URL會(huì)返回302+200的狀態(tài)碼。
2、IIS/.net
首先,修改應(yīng)用程序根目錄的設(shè)置,打開(kāi)web.config文件編輯,在其中加入如下內(nèi)容:
configuration
system.web
customErrors mode=On defaultRedirect=error.asp
error statusCode=404 redirect=notfound.asp /
/customErrors
/system.web
/configuration
博客提醒大家要注意一點(diǎn):上文例中error.asp為系統(tǒng)默認(rèn)的404頁(yè)面,notfound.asp為自定義的404頁(yè)面,使用時(shí)請(qǐng)修改相應(yīng)文件名。
然后,在自定義的404頁(yè)面notfound.asp中加入以下為引用的內(nèi)容:
% Response.Status = 404 Not Found %
這樣,便可以保證IIS能夠正確地返回404狀態(tài)碼。
七、制作404頁(yè)面的注意事項(xiàng)
1、不要使用絕對(duì)URL
如果使用絕對(duì)URL,會(huì)導(dǎo)致返回的狀態(tài)碼是302+200。
2、不要把404頁(yè)面設(shè)置成自動(dòng)跳轉(zhuǎn)
404頁(yè)面不要自動(dòng)跳轉(zhuǎn),讓用戶來(lái)決定去向。這涉及到404頁(yè)面的制作,提供用戶體驗(yàn)很重要。
3、不使用專業(yè)術(shù)語(yǔ)
404錯(cuò)誤 這個(gè)詞的使用一直非常規(guī)范,但這并不是你使用專業(yè)術(shù)語(yǔ)嚇跑訪客的理由。 找不到網(wǎng)頁(yè) 這個(gè)說(shuō)法相比來(lái)說(shuō)更準(zhǔn)確也更易于接受。
4、不要責(zé)備訪客
你的訪客很有可能是從其他網(wǎng)站鏈接或者是你網(wǎng)站上一個(gè)舊鏈接而來(lái)。看到這個(gè)錯(cuò)誤頁(yè)面并不是他們的錯(cuò),所以要善待他們。撰寫(xiě)的措辭要充滿歉意并盡量提供有益的幫助,而不是一些讓訪客們感到糟糕的文字。
5、提示訪客檢查拼寫(xiě)
還有一個(gè)可能:訪客看到404錯(cuò)誤頁(yè)面是由于他們自己在輸入U(xiǎn)RL網(wǎng)址時(shí)出現(xiàn)了拼寫(xiě)錯(cuò)誤。提示訪客檢查他們的拼寫(xiě),但不要失禮。就像我們?cè)谏厦嫣岬降模愕拇朕o不要讓訪客們感到你是在責(zé)備他們。
6、讓頁(yè)面返回404
每個(gè)網(wǎng)頁(yè)都有一個(gè)服務(wù)器響應(yīng)代碼。代碼200是指頁(yè)面一切正常,404則是指頁(yè)面無(wú)法被找到。如果你已經(jīng)指定了自定義的404錯(cuò)誤頁(yè)面,則需要確保頁(yè)面的標(biāo)題是返回正確的響應(yīng)代碼。有幾種不同的方法可以做到這一點(diǎn),最簡(jiǎn)單的就是用你的htaccess文件來(lái)指定錯(cuò)誤頁(yè)面。
7、明確表明404錯(cuò)誤
清楚地向訪客聲明他們正在搜尋的頁(yè)面無(wú)法找到,且不要讓錯(cuò)誤頁(yè)面看起來(lái)與正常的內(nèi)容頁(yè)(如:加入過(guò)多的文本和鏈接)太過(guò)相似。你是想要表明這是一個(gè)錯(cuò)誤頁(yè)面,所以就不要羞于向訪客們聲明這一點(diǎn)。
8、幫助訪客找到頁(yè)面
404錯(cuò)誤頁(yè)面已經(jīng)呈現(xiàn)在訪客面前,表明這個(gè)頁(yè)面并不是他們正在搜尋的。所以你應(yīng)該設(shè)法幫助他們找到原來(lái)的頁(yè)面。確保你的錯(cuò)誤頁(yè)中包含一個(gè)選項(xiàng)來(lái)協(xié)助用戶尋找他們想要的頁(yè)面,甚至可以包括有過(guò)更改的頁(yè)面的鏈接。
9、放置網(wǎng)站主頁(yè)鏈接
不要讓訪客無(wú)處可去或是無(wú)法找到你的網(wǎng)站信息。至少應(yīng)該有一個(gè)鏈接鏈回你的網(wǎng)站主頁(yè)。這樣一來(lái),從其他網(wǎng)站鏈接而來(lái)的訪客就可以了解你以及你的網(wǎng)站,甚至他們可能在你的網(wǎng)站中找到一些他們喜歡的內(nèi)容。
10、讓訪客方便反饋信息
如果訪問(wèn)者點(diǎn)擊了你網(wǎng)站上的一個(gè)錯(cuò)誤鏈接,你會(huì)想了解這個(gè)鏈接故障。如果通過(guò)404頁(yè)面給他們提供一個(gè)反饋信息的便捷方式,讓他們可以報(bào)告這個(gè)故障以便你去解決。這只需要一個(gè)非常簡(jiǎn)短的形式來(lái)提示訪客告訴你他們來(lái)自哪個(gè)頁(yè)面及哪個(gè)鏈接。通過(guò)這個(gè)方法,你可以獲取到所有你需要的信息。
訪客們可能依然因?yàn)闊o(wú)法找到他們想要的頁(yè)面而感到困惑和煩惱,因此給他們一個(gè)發(fā)泄不滿的地方,同時(shí)也給你一個(gè)做出回應(yīng)并提供幫助的機(jī)會(huì)。這很可能會(huì)為你挽回一個(gè)潛在客戶。
11、保持品牌風(fēng)格
我們都看過(guò)非??岬?04頁(yè)面設(shè)計(jì)。但千萬(wàn)不要使這個(gè)頁(yè)面的設(shè)計(jì)與你網(wǎng)站的其他頁(yè)面相差太大,否則會(huì)看起來(lái)這個(gè)頁(yè)面不像你網(wǎng)站的設(shè)計(jì),會(huì)讓訪客產(chǎn)生疑惑,誤以為自己已經(jīng)被帶到了一個(gè)外部網(wǎng)站。
12、注意404頁(yè)面的語(yǔ)言版本
如果你的網(wǎng)站是多語(yǔ)種的,404錯(cuò)誤頁(yè)面將從你所有語(yǔ)言版本的網(wǎng)站中獲取錯(cuò)誤信息。無(wú)論你想要顯示任何信息,都需要將其翻譯成各個(gè)語(yǔ)言版本,使每個(gè)人都能理解。同時(shí)還需提供一個(gè)鏈接返回到訪客所對(duì)應(yīng)的語(yǔ)言版本的網(wǎng)站。
13、讓訪客搜索想要的
如果訪客正在訪問(wèn)的頁(yè)面已被移動(dòng),你可能想給他們一個(gè)途徑來(lái)搜索頁(yè)面被移動(dòng)到了何處,可以考慮在頁(yè)面增加一個(gè)搜索框。
14、修復(fù)你的無(wú)效鏈接
如果你得到的數(shù)據(jù)顯示有大量的訪客訪問(wèn)您的404頁(yè)面(檢查你的網(wǎng)站的分析數(shù)據(jù)來(lái)確定數(shù)量),這表明你的網(wǎng)站上有很多無(wú)效鏈接。你完全可以通過(guò)修復(fù)這些鏈接來(lái)阻止訪客進(jìn)入404頁(yè)面。利用一些網(wǎng)站測(cè)試工具可以幫助檢查是否有無(wú)效鏈接,使你能夠迅速找到并修復(fù)他們而不必等待別人來(lái)告訴你。
15、不要把404頁(yè)面重定向到主頁(yè)
不要將404錯(cuò)誤頁(yè)面直接重定向轉(zhuǎn)到網(wǎng)站主頁(yè),否則可能會(huì)導(dǎo)致主頁(yè)在搜索引擎中消失。一些404錯(cuò)誤頁(yè)面會(huì)立刻重定向到網(wǎng)站主頁(yè),這樣做非常不好。你的訪客不知道他們已經(jīng)鏈接到了錯(cuò)誤的頁(yè)面,而且他們會(huì)感到困惑因?yàn)楸粺o(wú)緣無(wú)故地鏈回到了網(wǎng)站主頁(yè)。
16、檢查404頁(yè)面設(shè)置效果及返回狀態(tài)
404頁(yè)面設(shè)置完成,一定要檢查是否正確。但http頭信息返回的一定要是404狀態(tài)。這主要是對(duì)搜索引擎有關(guān)系,因?yàn)槿绻憔W(wǎng)站產(chǎn)生較多頁(yè)面時(shí)候但搜索引擎看到的是很多一樣的正常頁(yè)面,有可能會(huì)誤被認(rèn)為作弊。
評(píng)論(0人參與,0條評(píng)論)
發(fā)布評(píng)論
最新評(píng)論