程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> ASP編程 >> 關於ASP編程 >> 解決ASP中http狀態跳轉返回錯誤頁的問題

解決ASP中http狀態跳轉返回錯誤頁的問題

編輯:關於ASP編程

IIS默認的錯誤頁是很不友好的,很多人看到默認的錯誤頁時都會說:網站打不開了!白白損失了這部分流量。而如果錯誤頁直接跳轉到首頁又對搜索引擎很不友好,搞不好首頁還會被封掉。所以根據情況,有兩個方法解決這個問題:

 如果是博客等內容型的網站,可以返回一個帶有404錯誤的搜索框讓訪客搜索,若是電子商務型網站,則可以返回一個帶有404錯誤的進度條進行跳轉。這兩種方法即照顧了訪客又顧及到了SEO。

可以在Google webmaster tools中查看自己網站錯誤頁有多少。

修改默認錯誤頁的方法很簡單:在IIS中右鍵單擊要管理的網站,在自定義錯誤中設置404為相應的錯誤信息頁。這裡有兩種方式:

1、如果“消息類型”你選擇的是“文件”,則只能使用.html或htm結尾的文件,否則用戶訪問錯誤頁時會出現代碼。用這種方式設置的錯誤頁,雖然.html文件中沒有輸出404狀態,但IIS執行後會自動輸出404狀態。

2、如果你“消息類型”選擇了“URL”,則必須用asp文件(因為只有在asp文件中才能設置404狀態),否則訪問錯誤頁時會返回200狀態碼。還要在asp文件中加上:

復制代碼 代碼如下:<%Response.Status = "404 Not Found" %>
如果你希望定時跳轉到首頁,則也有兩種方法

1、利用meta標簽的refresh進行跳轉
復制代碼 代碼如下:<meta http-equiv="refresh" content="3;url=http://www.jb51.net>

2、使用js進行跳轉

<script style="text/javascript"> 
setTimeout("testTime()",2500); 
function testTime() { 
location = "http://www.jb51.net/"; 
} 
</script>

個人認為使用js的方法好一些,因為meta標簽跳轉擔心搜索引擎會識別為“200”或“302”見這裡的這段話:

常常看到許多網站的自定義404錯誤頁面采取類似這樣的形式:首先顯示一段錯誤信息,然後,通過Meta Refresh將頁面跳轉到網站首頁、網頁地圖或其他類似頁。根據具體實現方式不同,這類404頁面可能返回“200”狀態碼,也可能返回“302臨時重定向”,但不論哪種,從SEO技術角度看,均不是一種合適的選擇。

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

以上就是本文的全部內容,希望對大家的學習有所幫助,更好的解決在ASP中http狀態跳轉返回錯誤頁面的問題。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved