您現在的位置:[辽宁35选7]辽宁35选7 > 詳細的自定義404錯誤頁面的制作和設置

辽宁35选7:詳細的自定義404錯誤頁面的制作和設置

發布日期:2014-01-06 閱讀次數:1845
相信網上有很多關于404頁面的制作帖子了,這里辽宁35选7小編要總結的是根據自己這一次網站被降權而總結的404自定義錯誤頁面的制作,絕對超級詳細。
  一、什么是自定義404錯誤頁面?
  404自定義錯誤頁面就是當用戶輸入了錯誤的url地址或者輸入了一個不存在的url地址時,所返回的一個頁面,它的目的是:告訴瀏覽者其所請求的頁面不存在或鏈接錯誤,同時引導用戶使用網站其他頁面而不是關閉窗口網站離開。
  二、404自定義錯誤頁面是如何形成的?
  HTTP 404 錯誤意味著鏈接指向的網頁不存在,即原始網頁的URL失效,這種情況經?;岱⑸?,很難避免,比如說:網頁URL生成規則改變、網頁文件更名或移動位置、導入鏈接拼寫錯誤等,導致原來的URL地址無法訪問;當web 服務器接到類似請求時,會返回一個404 狀態碼,告訴瀏覽器要請求的資源并不存在。但是,Web服務器默認的404錯誤頁面,無論Apache服務器還是IIS服務器,均十分簡陋、呆板且對用戶不友好,無法給用戶提供必要的信息以獲取更多線索,無疑這會造成用戶的流失。
  因此,很多網站均使用自定義404錯誤的方式以提供用戶體驗避免用戶流失。一般而言,自定義404頁面通用的做法是在頁面中放置網站快速導航鏈接、搜索框以及網站提供的特色服務,這樣可以有效的幫助用戶訪問站點并獲取需要的信息。
  三、404自定義錯誤頁面對SEO的影響
  自定義404錯誤頁面是增強用戶體驗的很好的做法,但在應用過程中,網站制作者往往并未注意到對搜索引擎的影響,譬如:錯誤的服務器端配置導致返回“200”狀態碼或自定義404錯誤頁面使用Meta Refresh屬性導致返回“302”狀態碼。正確設置的自定義404錯誤頁面,不僅應當能夠正確地顯示,同時,應該返回“404”錯誤代碼,而不是 “200”或“302”。雖然對訪問的用戶而言,HTTP狀態碼究竟是“404”還是“200”來說并沒有什么區別,但對搜索引擎這則是相當重要的。
  所以要確保404頁面返回的是404代碼而不是200和302.在自定義404錯誤頁面設置完畢后,一定要檢查一下其是不是能夠正確地返回“404”狀態碼??梢允褂肧erver Header檢查工具(//www.seochat.com/seo-tools/redirect-check/),輸入一個不存在網頁的url,查看一下HTTP Header的返回情況,確信其返回的是“404 Not found”。
  四、定制404錯誤頁面的基本原則
  首先應明確的是,404錯誤頁面應工作在服務器級而不是網頁級。對定制使用動態頁面如PHP腳本類型的404頁(如:404.php、404.asp、404.aspx等)時,必須確保在PHP執行前服務器已經順利地送出“404”狀態碼,不然,一旦執行到了ISAPI(一般運行在windows服務器上的偽靜態腳本服務技術)級別,返回的狀態碼便只能是“200”或其他如“302”之類的重定向狀態碼了。對于大部分使用了windows虛擬主機,同時又支持PHP程序運行的服務器,一般都使用了ISAPI技術,他們可以提供兩種自定義技術,一種靜態404.htm頁面, 這種頁面一般不直接放在網站的根目錄之下,而是放在一個“HttpError”這個文件夾之下,但是返回的狀態碼是“200”,另一種是動態404頁(如:404.php)等的設置,這種設置,就是在網站的根目錄之下放一個404.php之類的動態頁面,這樣會返回狀態碼“404”,所以網站的制作者,在虛擬主機的后臺設置時,必須看清楚自己的設置,如何要做網站的SEO優化,那么就要設置成能返回“404”狀態碼的那種,否則就會吃大虧.
  其次,在自定義網站的404錯誤頁面時,對設置的錯誤頁面URL鏈接應使用相對路徑而不是絕對路徑,而且自定義404頁面應該放在網站根目錄下。盡管無效鏈接可能是多種形式的URL,但當發生404訪問錯誤時,WEB服務器會自動將其轉到自定義的當404錯誤頁中,這跟URL的形似沒有關系。
  五、404錯誤頁面的設置方法
  1、Apache服務器下設置404錯誤頁面
  為Apache Server設置 404錯誤頁面的方法很簡單,首先制作一個名為404.html/404.htm/404.php/404.asp/404.aspx的頁面,視空間要求而定,再在.htaccess 文件中加入如下內容即可(.htaccess文件一般linux空間會自帶的,如果沒有這個文件,自己可以用記事本寫一個,命名為.htaccess,一定要記得去掉記事本文件的.txt哦。而windows虛擬空間是沒有這個文件的,也不用上傳這個文件):
  # 404 page
  ErrorDocument 404 /notfound.php
  (“notfound”是你給你的自定義錯誤頁面的命名,你也可以改成Error.php等等)
  注意:
  (1).切記不要將404錯誤跳轉到網站主頁,比如使用了js腳本或者meta refresh跳轉技術。否則可能會導致主頁在搜索引擎中消失或者不被收錄.
  (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” 文件編輯,在其中加入如下內容:
  <configuration>
  <system.web>
  <customErrors mode=”On” defaultRedirect=”error.asp”>
  <error statusCode=”404″ redirect=”notfound.asp” />
  </customErrors>
  </system.web>
  </configuration>
  注:上文例中“error.asp”為系統默認的404頁面,“notfound.asp”為自定義的404頁面,使用時請修改相應文件名。
  然后,在自定義的404頁面“notfound.asp”中加入:
  <%
  Response.Status = “404 Not Found”
  %>
  這樣,便可以保證IIS能夠正確地返回“404”狀態碼。
  所有的設置完成之后,別忘記檢測http狀態,確定返回的是404,而不是200。
標簽:404頁面
司瓦圖胡經理
技術客服,免費咨詢
技術客服司瓦圖胡經理
司瓦圖網絡自2007年正式注冊成立,目前提供各類平臺系統定制,包括電商平臺開發,微信小程序定制開發,微信平臺定制開發,企業官網制作以及400電話開通等服務!

全國服務熱線4000-522-555周一至周六8:30-18:00

地址:合肥市政務區天瓏廣場5號甲級寫字樓1007-1008室

老張個人微信

老張原創分享

Copyright © 2018 版權所有:合肥司瓦圖網絡科技有限責任公司 ALL Rights Reserved  
皖ICP備07007410號
司瓦圖老張頭像
司瓦圖老張
老張自05年進入互聯網行業,一直從事互聯網平臺開發行業,服務項目主要有:平臺定制開發,電商平臺開發,微信商城,微信小程序等。
司瓦圖老張微信
{ganrao}