301跳轉和302跳轉有啥區別?下面本篇文章就來帶大家對比一下301與302跳轉,聊聊它們的區別,以及這兩種轉移在使用的時候有啥好處或者問題等,希望對大家有所幫助!
301和302 http狀態有啥區別?
301, 302? 都是 HTTP 狀態的編碼,都代表著某個URL發生了轉移,不同之處在于: 301 redirect: 301 代表永久性轉移(Permanently Moved),? 302 redirect:? 302? 代表暫時性轉移(Temporarily Moved ), 當然 Http? 狀態 200 標示沒有任何問題發生。??
這兩種轉移在使用的時候有啥好處或者問題?
301 重定向是網頁更改地址后對搜索引擎友好的最好方法,只要不是暫時搬移的情況,都建議使用301來做轉址。? 302? 重定向是臨時性轉移。?
在前些年,不少Black Hat SEO曾廣泛應用這項技術作弊,目前,各大主要搜索引擎均加強了打擊力度,象Google前些年對Business.com以及近來對BMW德國網站的懲罰。即使網站客觀上不是spam,也很容易被搜尋引擎容易誤判為spam而遭到懲罰。?
研究搜索引擎優化(SEO)的人,應該都知道,301, 302 使用不當,或者靈活使用會有不錯的效果的,比如參看下面文章:
如果是運維人員,配置WEB服務器的一些設置就可以實現跳轉,比如下面一些關于iis實現重定向的文章
-
將請求重定向到文件、目錄或程序 (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/fbcccfce-6695-4f92-bd55-869d85ff49fb.mspx?mfr=true
-
重定向參考 (IIS 6.0)
http://www.microsoft.com/technet/prodtechnol/windowsserver2003/zh-chs/library/iis/41c238b2-1188-488f-bf2d-464383b1bb08.mspx?mfr=true
其他WEB服務器也可以通過設置實現跳轉,我就不羅列了。
從技術人員來說我們比較常用的跳轉方法有以下幾種:
我們使用? ?302轉向與網址劫持? 工具來監控的下面提到的幾種方法,看跳轉過程中 HTTP 狀態碼是301? 302 ?200?:
方法1:Response.Redirect(“Test.aspx”);
狀態碼 302? 臨時性跳轉
方法2:
meta fresh: 這在2000年前比較流行,不過現在已很少見。其具體是通過網頁中的meta指令,在特定時間后重定向到新的網頁,如果延遲的時間太短(約5秒之內),會被判斷為spam。這種跳轉方式,整個跳轉過程中,頁面 Http 狀態都是200,即,頁面沒有任何錯誤發生。
方法3:Server.Transfer(“Test.aspx”);
這種跳轉方式,整個跳轉過程中,頁面 Http 狀態都是200,即,頁面沒有任何錯誤發生。
方法4:URLRewrite
這種跳轉方式,整個跳轉過程中,頁面 Http 狀態都是200,即,頁面沒有任何錯誤發生。
沒有一種是301跳轉。也就是上面幾種跳轉方式都用不到301跳轉的好處。
使用301跳轉有啥好處呢?
SEO(搜索引擎優化)中提到一點:如果我們把一個地址采用301跳轉方式跳轉的話,搜索引擎會把老地址的PageRank等信息帶到新地址,同時在搜索引擎索引庫中徹底廢棄掉原先的老地址。
如何編碼實現301跳轉呢?
Response.Status?=?"301?Moved?Permanently"; Response.AddHeader("Location","...");?//這里的?...?表示你要跳轉去的頁面。
相關學習推薦:302轉向與網址劫持