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://chenfangyi.com/?xxx>
據google中文博客管理員介紹,yahoo就使用的此方法進行跳轉。
2、使用js進行跳轉
我感覺使用js的方法好一些,因為meta標籤跳轉擔心搜索引擎會識別為200或302見這裡的這段話:
常常看到許多網站的自定義404錯誤頁面採取類似這樣的形式:首先顯示一段錯誤信息,然後,通過meta refresh將頁面跳轉到網站首頁、網頁地圖或其他類似頁。根據具體實現方式不同,這類404頁面可能返回200狀態碼,也可能返回302臨時重定向,但不論哪種,從seo技術角度看,均不是一種合適的選擇。
對200狀態的情況我們上面已經談過,那麼,當404頁面返回302時,搜索引擎會怎麼對待呢?從理論上說,對302錯誤,搜索引擎認為該網頁是存在的,只不過臨時改變了地址,仍然會索引收錄該頁,這樣,同樣會出現類似於200狀態碼時的重複文本問題;其次,以google為代表的主流搜索引擎對302重定向的適用範圍要求越來越嚴格,這類不當使用302重定向的情況存在很大的風險。