什么是302重定向及操作方法
301和302 Http狀態(tài)有啥區(qū)別?301,302 都是HTTP 狀態(tài)的編碼,都代表著某個URL 發(fā)生了轉移,不同之處在于: 301 redirect: 301 代表永久性轉移(Permanentl
301和302 Http狀態(tài)有啥區(qū)別?
301,302 都是HTTP 狀態(tài)的編碼,都代表著某個URL 發(fā)生了轉移,不同之處在于: 301 redirect: 301 代表永久性轉移(Permanently Moved) , 302 redirect: 302 代表暫時性轉移(Temporarily Moved ), 當然 Http 狀態(tài) 200 標示沒有任何問題發(fā)生。
這兩種轉移在使用的時候有啥好處或者問題?
301 重定向是網頁更改地址后對搜索引擎友好的最好方法,只要不是暫時搬移的情況, 都建議使用301來做轉址。 302 重定向是臨時性轉移。
在前些年,不少Black Hat SEO 曾廣泛應用這項技術作弊,目前,各大主要搜索引擎均加強了打擊力度,象Google 前些年對Business.com 以及近來對BMW 德國網站的懲罰。即使網站客觀上不是spam ,也很容易被搜尋引擎容易誤判為spam 而遭到懲罰。
研究搜索引擎優(yōu)化(SEO )的人,應該都知道,301,302 使用不當,或者靈活使用會有不錯的效果的,比如參看下面文章:
302轉向與網址劫持
301轉向和網址規(guī)范化 301重定向的實現(xiàn)方法
51window 提供的301轉向的代碼
一個網站十幾個域名的重定向經驗談
幾個常用的301重定向
如果是運維人員,配置WEB 服務器的一些設置就可以實現(xiàn)跳轉,比如下面一些關于IIS 實現(xiàn)重定向的文章
將請求重定向到文件、目錄或程序 (IIS 6.0)
重定向參考 (IIS 6.0)
其他WEB 服務器也可以通過設置實現(xiàn)跳轉,我就不羅列了。
從技術人員來說我們比較常用的跳轉方法有以下幾種:
我們使用 Fiddler 工具來監(jiān)控的下面提到的幾種方法,看跳轉過程中HTTP 狀態(tài)碼是301?302?200?:
方法1:Response.Redirect("Test.aspx");
狀態(tài)碼 302 臨時性跳轉
方法2:
meta fresh: 這在2000年前比較流行,不過現(xiàn)在已很少見。其具體是通過網頁中的meta 指令,在特定時間后重定向到新的網頁,如果延遲的時間太短(約5秒之內) ,會被判斷為spam 。這種跳轉方式,整個跳轉過程中,頁面Http 狀態(tài)都是200,即,頁面沒有任何錯誤發(fā)生。
方法3:Server.Transfer("Test.aspx");
這種跳轉方式,整個跳轉過程中,頁面Http 狀態(tài)都是200,即,頁面沒有任何錯誤發(fā)生。
,方法4:URLRewrite
這種跳轉方式,整個跳轉過程中,頁面Http 狀態(tài)都是200,即,頁面沒有任何錯誤發(fā)生。
沒有一種是301跳轉。也就是上面幾種跳轉方式都用不到301跳轉的好處。
使用301跳轉有啥好處呢?
SEO (搜索引擎優(yōu)化)中提到一點:如果我們把一個地址采用301跳轉方式跳轉的話,搜索引擎會把老地址的PageRank 等信息帶到新地址,同時在搜索引擎索引庫中徹底廢棄掉原先的老地址。
如何編碼實現(xiàn)301跳轉呢?
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location","http://www.mmmstar.com"); 這里的 ... 表示你要跳轉去的頁面。