相信網上有很多關於404頁面的制作帖子了,這裏我要總結的是根據自己這壹次網站被降權而總結的404自定義錯誤頁面的制作,絕對超級詳細。
壹、什麽是自定義404錯誤頁面
404自定義錯誤頁面就是當用戶輸入了錯誤的url地址或者輸入了壹個不存在的url地址時,所返回的壹個頁面,它的目的是:告訴瀏覽者其所請求的頁面不存在或鏈接錯誤,同時引導用戶使用網站其他頁面而不是關閉窗口網站離開。
二、404自定義錯誤頁面是如何形成的
/404.htm/404.php/404.asp/404.aspx的頁面,視空間要求而定,再在.htaccess文件中加入如下內容即可(.htaccess文件壹般linux空間會自帶的,如果沒有這個文件,自己可以用記事本寫壹個,命名為.htaccess,壹定要記得去掉記事本文件的.txt哦。而windows虛擬空間是沒有這個文件的,也不用上傳這個文件):
404page
ErrorDocument404/notfound.php
(“notfound”是妳給妳的自定義錯誤頁面的命名,妳也可以改成Error.php等等)
註意:
(1).切記不要將404錯誤跳轉到網站主頁,比如使用了js腳本或者metarefresh跳轉技術。否則可能會導致主頁在搜索引擎中消失或者不被收錄.
(2).切記不要使用絕對URL如果使用絕對URL返回的狀態碼是“302”+“200”
2、IIS/ASP.net下設置404錯誤頁面
靜態404錯誤頁面設置
(1)做個404頁面,404.html或者404.htm,根據妳的網站實際情況來。
(2)服務器/虛擬主機管理設置,根據自己的情況,選擇“使用根目錄下的404頁面”,如果自己能找到“消息類型”選項,則要選擇“文件”或者“默認值”,而不能選擇“URL”。如果自己在主機提供商網站的管理後臺找不到此“消息類型”選項請聯系技術客服做出修改。這是具有決定性的壹步。這步壹定要操作好,如果在後臺找不到這個消息類型,就不要自己設置,因為妳設置之後肯定返回值是200,所以事先和客服聯系下。
(3)上傳404.htm到網站根目錄,打開壹次試試,看是否成功了。
動態404錯誤頁面設置
首先,修改應用程序根目錄的設置,打開“web.config”文件編輯,在其中加入如下內容:
<P><configuration></P>
<P><system.web></P>
<P><customErrorsmode=”On”defaultRedirect=”error.asp”></P>
<P><errorstatusCode=”404〃redirect=”notfound.asp”/></P>
<P></customErrors></P>
<P></system.web></P>
<P></configuration></P>
復制代碼
註:上文例中“error.asp”為系統默認的404頁面,“notfound.asp”為自定義的404頁面,使用時請修改相應文件名。
然後,在自定義的404頁面“notfound.asp”中加入:
<P><%</P>
<P>Response.Status=“404NotFound”</P>
<P>%></P>
復制代碼
這樣,便可以保證IIS能夠正確地返回“404”狀態碼。
所有的設置完成之後,別忘記檢測http狀態,確定返回的是404,而不是200。