301重定向和url轉發的區別

原文鏈接:https://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&tn=87048150_dg&wd=url%E8%BD%AC%E5%8F%91%E5%92%8C301&oq=url%25E8%25BD%25AC%25E5%258F%2591%25E6%259C%2589%25E5%2588%25A9%25E4%25BA%258E%25E4%25BC%2598%25E5%258C%2596%25E5%2590%2597&rsv_pq=94ae969100061a1b&rsv_t=

301重定向的作用

爲什麼要使用301轉向?首先第一條就是剛纔我們提到的爲了seo優化,在如何url網址規範化中也提到,設置301轉向後,原來的頁面將返回301 HTTP 狀態碼給瀏覽器或者搜索引擎,告知搜索引擎次頁面已經永久重定向到了新的網頁上,spider就不會索引原網頁,同時也會將原網頁的PR權重傳遞給跳轉到的新網頁。如果返回的是302狀態碼,則告訴spider頁面跳轉只是臨時的,spider仍然會索引原網頁,這就造成了重複頁面問題(即Google 補充材料)。如www.nowamagic.net 302 跳轉到 nowamagic.net,它們就會被當做兩個重複頁面。

其次,由於各種原因要更換域名時,可以使用301重定向將老域名301轉向到新的域名,這樣老域名的流量不會流失,PR權重也會轉移。另外當有註冊了多個不同域名,指向到同一網站時,也可以只設置一個主域名,將其他域名設置301轉向到主域名,這樣各個域名就不會分散權重。因此使用301轉向很有必要。

URL轉發的原理

域名服務商提供轉發的功能的話

所謂的url轉發,就是先對域名做一個CNAME記錄,然後由CNAME記錄來對應一個轉發地址,用html程序來實現跳轉。舉個例子:我要把bbs.abc.com轉發到www.abc.com/bbs目錄,那我應該怎麼做呢?

首先在abc.com裏面做一個CNAME(別名)記錄bbs,指向域名註冊商轉發服務器地址,比如 fw1.domainreg.com

然後再添加一個轉發記錄,用bbs.abc.com指向www.abc.com/bbs,剩下的工作,就交給轉發服務器。

那麼,轉發服務器又做了什麼呢?在轉發服務器上有一個綁定域名爲fw1.domainreg.com的站點,訪問bbs.abc.com的時候,由於做了CNAME記錄,會被跳轉到fw1.domainreg.com網站, 這個網站的首頁面會接收到瀏覽器地址欄上的bbs.abc.com這個地址參數,然後到數據庫裏面一查,發現了一個轉發記錄到www.abc.com/bbs,於是,它就把瀏覽器重新跳轉到www.abc.com/bbs這個地址裏面去了。

 

url轉發有兩種方式,隱藏轉發和(url轉發後瀏覽器地址欄輸入的網址不變)不隱藏轉發(也叫顯性轉發:url轉發後地址欄顯示的地址爲轉發後的網址)。有人測試過,不管是隱藏轉發還是不隱藏轉發,根據不同的域名註冊服務商,可能會返回不同的http header。有的域名服務商管理後臺設置的url轉發功能(URL Forwarding)會使服務器返回302狀態碼給搜索引擎,而不是301 http 狀態碼。

據說這類url轉發有的是通過給瀏覽器窗口套用一個框架iframe的方式來實現隱藏轉發,有的則是使用Javascript或Meta Refresh來實現不隱藏方式的url轉發,很少是真正用了301 重定向方法的。

所以大家還是儘量少用url轉發功能,而是自己去手工設置實現301轉向。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章