.Net教程之HTTP狀態碼200,301,302_.Net教程
推薦:解析.NET程序員 Ruby核心語法入門本文的目的是為了找出為什么.NET程序員都想學習并使用Ruby,并探索Ruby語言的核心語法。 微軟的IronRuby項目為Windows平臺帶來了強大的動態語言,Ruby編程語言是一個現代的,面向對象的
跳轉非常常用,在哪里都一樣,這里的一些說明和用法也如此,不止適用于asp.net,其他語言也會用得到。跳轉的目的本來很簡單,就是當用戶或系統需要時從一個頁面轉向另一個頁面,但自從有了各種各樣的需求,還有那個什么SEO的東西之后,跳轉被搞得極其復雜
跳轉時的HTTP的狀態碼一般為200,301,302中的一個,下面先列出各狀態碼出現的情況,然后再解釋各狀態碼有什么不同:
狀態碼200的跳轉:
1. <meta http-equiv="refresh" content="3; URL=default.aspx" />
2. Server.Transfer("default.aspx");
3. URLRewrite--嚴格來說,這個不算是跳轉,只是一種URL“欺騙”
4. <a>--不知道我把這個標簽也列為一種跳轉會不會有人有意見
狀態302的跳轉:
Response.Redirect("default.aspx");
狀態301和的跳轉: Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", http://www.wf0088.com);
對于用戶來說,各個跳轉都差不很多,都可以達到目的。但對于SEO來說,這些差得很遠,狀態200第三條使用合適對SEO有很大好處,但狀態200的第一條和狀態302卻基本沒有一點益處,然后很可惜,302跳轉被用到了滿大街。
很久很久以前,那時候搜索引擎還很傻,好多人利用meta refresh來獲得強大的SEO效果,后來直接被搜索引擎給干掉了。再后有很多人開始用302做跳板,后來也被干掉了,比如那兩個著名的案例:Business.com和BMW。欺騙搜索引擎,后果很嚴重。所以現在很少有人在跳轉上做SEO,但是有些不可避免的跳轉還是要繼續存在著,如何防止這些跳轉起到負面影響呢?于是有人研究了301跳轉。
忘記給一些入門的兄弟掃下盲,三種狀態碼解釋如下:
200 正常狀態,未發生任何事,普通頁面瀏覽一般都是200
301 永久性轉移(Permanently Moved),SEO必用的招式,會把舊頁面的PR等信息轉移到新頁面
302 暫時性轉移(Temporarily Moved),很常用的招式,也是SEO最容易被判作弊的方式
順便提下那個404,好多網站在出錯時都會有一個自定義的錯誤頁面,但很可惜也有很多人忘記了這個狀態碼,直接搞個錯誤頁面一般都還是200,搜索引擎會收錄這個頁面,但很多不同URL的404都跳轉到這一個頁面時,會被認為大量重復頁,最慘的就是404太多了,被認為站內無效、重復內容過多,所以做自定義錯誤頁面時一定記得返回個404回去。
分享:關于URL的傳遞字符串問題的研究前幾天在調程序的時候遇到了比較郁悶的問題,我用URL從一個頁面傳遞字符串到另一個頁面的時,出現了個奇怪的問題,我要傳遞的字符串是“DK51 700中繼站”;可是另一個頁面接收到
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發送Email實例(可帶附件)
- js實現廣告漂浮效果的小例子
- asp.net Repeater 數據綁定的具體實現
- Asp.Net 無刷新文件上傳并顯示進度條的實現方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數據庫(連接字符串的配置及獲取)
- asp.net頁面傳值測試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-.Net教程之HTTP狀態碼200,301,302
。