Web服務(wù)器默認(rèn)的404錯(cuò)誤頁(yè)面,無(wú)論Apache還是IIS,均十分簡(jiǎn)陋、呆板且對(duì)用戶不友好,無(wú)法給用戶提供必要的信息以獲取更多線索,無(wú)疑這會(huì)造成用戶的流失。因此,很多網(wǎng)站均使用自定義404錯(cuò)誤的方式以提供用戶體驗(yàn)避免用戶流失。
HTTP 404錯(cuò)誤意味著鏈接指向的網(wǎng)頁(yè)不存在,即原始網(wǎng)頁(yè)的URL失效,這種情況經(jīng)常會(huì)發(fā)生,很難避免,比如說(shuō):網(wǎng)頁(yè)URL生成規(guī)則改變、網(wǎng)頁(yè)文件更名或移動(dòng)位置、導(dǎo)入鏈接拼寫錯(cuò)誤等,導(dǎo)致原來(lái)的URL地址無(wú)法訪問(wèn);當(dāng)Web服務(wù)器接到類似請(qǐng)求時(shí),會(huì)返回一個(gè)404狀態(tài)碼,告訴瀏覽器要請(qǐng)求的資源并不存在。
但是,Web服務(wù)器默認(rèn)的404錯(cuò)誤頁(yè)面,無(wú)論Apache還是IIS,均十分簡(jiǎn)陋、呆板且對(duì)用戶不友好,無(wú)法給用戶提供必要的信息以獲取更多線索,無(wú)疑這會(huì)造成用戶的流失。因此,很多網(wǎng)站均使用自定義404錯(cuò)誤的方式以提供用戶體驗(yàn)避免用戶流失。一般而言,自定義404頁(yè)面通用的做法是在頁(yè)面中放置網(wǎng)站快速導(dǎo)航鏈接、搜索框以及網(wǎng)站提供的特色服務(wù),這樣可以有效的幫助用戶訪問(wèn)站點(diǎn)并獲取需要的信息。
定制404錯(cuò)誤頁(yè)面的基本原則
首先應(yīng)明確的是,404錯(cuò)誤應(yīng)工作在服務(wù)器級(jí)而不是網(wǎng)頁(yè)級(jí)。對(duì)定制使用動(dòng)態(tài)頁(yè)面如PHP腳本類型的404頁(yè)時(shí),必須確保在PHP執(zhí)行前服務(wù)器已經(jīng)順利地送出“404”狀態(tài)碼,不然,一旦執(zhí)行到了ISAPI級(jí)別,返回的狀態(tài)碼便只能是“200”或其他如“302”之類的重定向狀態(tài)碼了。
其次,在自定義網(wǎng)站的404錯(cuò)誤頁(yè)面時(shí),對(duì)設(shè)置的錯(cuò)誤頁(yè)面URL鏈接應(yīng)使用相對(duì)路徑而不是絕對(duì)路徑,而且自定義404頁(yè)面應(yīng)該放在網(wǎng)站根目錄下。盡管無(wú)效鏈接可能是多種形式的URL,但當(dāng)發(fā)生404訪問(wèn)錯(cuò)誤時(shí),WEB服務(wù)器會(huì)自動(dòng)將其轉(zhuǎn)到自定義的當(dāng)404錯(cuò)誤頁(yè)中,這跟URL的形似沒有關(guān)系。
Apache下設(shè)置404錯(cuò)誤頁(yè)面
為Apache Server設(shè)置 404錯(cuò)誤頁(yè)面的方法很簡(jiǎn)單,只需在.htaccess文件中加入如下內(nèi)容即可:
ErrorDocument 404 /notfound.php
注意:
1.切記不要將404錯(cuò)誤轉(zhuǎn)向到網(wǎng)站主頁(yè),否則可能會(huì)導(dǎo)致主頁(yè)在搜索引擎中消失
2.切記不要使用絕對(duì)URL(例如:http://www.XX.com/nofound.php形式),如果使用絕對(duì)URL返回的狀態(tài)碼是“302”+“200”(已測(cè)試)
IIS/ASP.net下設(shè)置404錯(cuò)誤頁(yè)面
首先,修改應(yīng)用程序根目錄的設(shè)置,打開“web.config”文件編輯,在其中加入如下內(nèi)容:
<configuration>
<system.web>
<customErrors mode=”O(jiān)n” defaultRedirect=”error.asp”>
<error statusCode=”404″ redirect=”notfound.asp”/>
</customErrors>
</system.web>
</configuration>
注:上文例中“error.asp”為系統(tǒng)默認(rèn)的404頁(yè)面,“notfound.asp”為自定義的404頁(yè)面,使用時(shí)請(qǐng)修改相應(yīng)文件名。
然后,在自定義的404頁(yè)面“notfound.asp”中加入:
<%
Response.Status =“404 Not Found”
%>
這樣,便可以保證IIS能夠正確地返回“404”狀態(tài)碼
在IIS/ASP.net下設(shè)置404靜態(tài)頁(yè)面
設(shè)置靜態(tài)404錯(cuò)誤頁(yè)面的方法則比較簡(jiǎn)單,在IIS管理器中右鍵單擊要管理的網(wǎng)站,打開“屬性”中的“自定義錯(cuò)誤信息”頁(yè),為“404”設(shè)定相應(yīng)的錯(cuò)誤信息頁(yè)即可。不過(guò),此處在“消息類型”中一定要選擇“文件”或“默認(rèn)值”,而不要選擇“URL”,不然,將導(dǎo)致返回“200”狀態(tài)碼。
最后提醒各位站長(zhǎng)朋友們,一定不要將404錯(cuò)誤直接轉(zhuǎn)向到網(wǎng)站首頁(yè),這將可能導(dǎo)致你的網(wǎng)站首頁(yè)不被收錄。
河南億恩科技股份有限公司(mszdt.com)始創(chuàng)于2000年,專注服務(wù)器托管租用,是國(guó)家工信部認(rèn)定的綜合電信服務(wù)運(yùn)營(yíng)商。億恩為近五十萬(wàn)的用戶提供服務(wù)器托管、服務(wù)器租用、機(jī)柜租用、云服務(wù)器、網(wǎng)站建設(shè)、網(wǎng)站托管等網(wǎng)絡(luò)基礎(chǔ)服務(wù),另有網(wǎng)總管、名片俠網(wǎng)絡(luò)推廣服務(wù),使得客戶不斷的獲得更大的收益。
服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:
0371-60135900
虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:
0371-55621053
網(wǎng)絡(luò)版權(quán)侵權(quán)舉報(bào)電話:
0371-60135995
服務(wù)熱線:
0371-60135900