新聞動態 NEWS 我們的動態?
Our dynamic?

思盾網絡教您如何正確處理HTTP 404錯誤頁面

  日期:2013-02-25  瀏覽次數:130

  自定義404錯誤頁面是提供用戶體驗的很好的做法,但在應用過程中往往并未注意到對搜索引擎的影響,譬如:錯誤的服務器端配置導致返回 “200”狀態碼或自定義404錯誤頁面使用Meta Refresh導致返回“302”狀態碼。

  正確設置的自定義404錯誤頁面,不僅應當能夠正確地顯示,同時,應該返回“404”錯誤代碼,而不是 “200”或“302”。

  雖然對訪問的用戶而言,HTTP狀態碼究竟是“404”還是“200”來說并沒有什么區別,但對搜索引擎而言,這則是相當重要 的。

  HTTP 404 錯誤意味著鏈接指向的網頁不存在,即原始網頁的URL失效,這種情況經?;岱⑸?,很難避免,比如說:網頁URL生成規則改變、網頁文件更名或移動位置、導 入鏈接拼寫錯誤等,導致原來的URL地址無法訪問;當Web 服務器接到類似請求時,會返回一個404 狀態碼,告訴瀏覽器要請求的資源并不存在。

  但是,Web服務器默認的404錯誤頁面,無論Apache還是IIS,均十分簡陋、呆板且對用戶不友好,無法 給用戶提供必要的信息以獲取更多線索,無疑這會造成用戶的流失。

  因此,很多網站均使用自定義404錯誤的方式以提供用戶體驗避免用戶流失。一般而言,自定義404頁面通用的做法是在頁面中放置網站快速導航鏈接、搜索框以及網站提供的特色服務,這樣可以有效的幫助用戶訪問站點并獲取需要的信息。HTTP404對SEO的影響

  (一)自定義404錯誤頁返回“200”狀態碼

  當搜索引擎蜘蛛在請求某個URL時得到“404”狀態回應時,即知道該URL已經失效,便不再索引該網頁,并向數據中心反饋將該URL表示的網 頁從索引數據庫中刪除,當然,刪除過程有可能需要很長時間;

  而當搜索引擎得到“200”狀態回應時,則會認為該url是有效的,便會去索引,并會將其收錄 到索引數據庫,這樣的結果便是這兩個不同的url具有完全相同的內容:自定義404錯誤頁面的內容,這會導致出現復制網頁問題。對搜索引擎而言,特別是 Google,不但很難獲得信任指數TrustRank,也會大大降低Google對網站質量的評定。(為什么會出現返回“200”狀態碼的情況??請參 看下面內容“自定義404錯誤頁面的基本原則”)

  我一直在使用Google Sitemap,當我們提交XML格式網站地圖文件時,Google會驗證我們的身份以確保是網站合法的管理者。驗證方式有兩種:上傳指定名稱的html 頁到網站根目錄或者在網頁meta區域添加一個標識身份的meta標簽。

  我通常是使用上傳html網頁的方式,但Google卻提示我網站根目錄下找不到 這個網頁(實際上我已上傳,并且通過瀏覽器可以訪問),這是一個很可怕的問題.

  (二)自定義404錯誤頁使用Meta Refresh返回“302”狀態碼

  常??吹叫磯嗤鏡淖遠ㄒ?04錯誤頁面采取類似這樣的形式:首先顯示一段錯誤信息,然后,通過Meta Refresh將頁面跳轉到網站首頁、網頁地圖或其他類似頁。根據具體實現方式不同,這類404頁面可能返回“200”狀態碼,也可能返回“302”,但 不論哪種,從SEO技術角度看,均不是一種合適的選擇。

  對“200”狀態的情況我們上面已經談過,那么,當404頁面返回“302”時,搜索引擎會怎么對待呢?從理論上說,對“302”錯誤,搜索引 擎認為該網頁是存在的,只不過臨時改變了地址,仍然會索引收錄該頁,這樣,同樣會出現類似于“200”狀態碼時的重復文本問題;其次,以google為代 表的主流搜索引擎對302重定向的適用范圍要求越來越嚴格,這類不當使用302重定向的情況存在很大的風險。

  確保自定義404錯誤頁面能夠返回“404”狀態碼

  在自定義404錯誤頁面設置完畢后,一定要檢查一下其是不是能夠正確地返回“404”狀態碼??梢允褂肧erver Header檢查工具,輸入一個不存在網頁的url,查看一下HTTP Header的返回情況,確信其返回的是“404 Not found”。


  404錯誤的處理方式
  (一)定制404錯誤頁面的基本原則

  首先應明確的是,404錯誤應工作在服務器級而不是網頁級。對定制使用動態頁面如PHP腳本類型的404頁時,必須確保在PHP執行前服務器已 經順利地送出“404”狀態碼,不然,一旦執行到了ISAPI級別,返回的狀態碼便只能是“200”或其他如“302”之類的重定向狀態碼了。

  其次,在自定義網站的404錯誤頁面時,對設置的錯誤頁面URL鏈接應使用相對路徑而不是絕對路徑,而且自定義404頁面應該放在網站根目錄 下。盡管無效鏈接可能是多種形式的URL,但當發生404訪問錯誤時,WEB服務器會自動將其轉到自定義的當404錯誤頁中,這跟URL的形似沒有關系。

  (二)Apache下設置404錯誤頁面

  為Apache Server設置 404錯誤頁面的方法很簡單,只需在.htaccess 文件中加入如下內容即可:
ErrorDocument 404 /notfound.php

  注意:
1.切記不要將404錯誤轉向到網站主頁,否則可能會導致主頁在搜索引擎中消失
2.切記不要使用絕對URL(例如://www.dhabh.com.cn/mapsite.html 形式),如果使用絕對URL返回的狀態碼是“302”+“200”(已測試)


(三)IIS/ASP.net下設置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”狀態碼

  (四)在IIS/ASP.net下設置404靜態頁面

  設置靜態404錯誤頁面的方法則比較簡單,在IIS管理器中右鍵單擊要管理的網站,打開“屬性”中的“自定義錯誤信息”頁,為“404”設定相應的 錯誤信息頁即可。不過,此處在“消息類型”中一定要選擇“文件”或“默認值”,而不要選擇“URL”,不然,將導致返回“200”狀態碼。

  本站關鍵詞=北单比分开奖sp怎么得出、北单比分开奖sp怎么得出

本站關鍵詞:中山網站建設 中山網站推廣 中山網頁設計 中山SEO 中山網絡公司
{ganrao} 云南十一选五开结果 3d开奖结果走势图 快速时时彩 福建麻将有金 韩国快乐8 球探手机足球比分app下载 上海时时乐基本走势图 高端制造业上市公司 百家欧赔球探即时指数 3d丽人杀码今天 广东时时彩 成都麻将血战到底单机版下载 重庆彩幸运农场走势 河南快赢481 美女天天单机版斗地主 单机免费湖南麻将