黑帽SEO秒排慣用的301與302跳轉(zhuǎn)技術(shù)(301與302重定向的區(qū)別)
技術(shù)(301與302重定向的區(qū)別).jpg)
301與302重定向的區(qū)別
一,301永久重定向
被請(qǐng)求的資源已永久移動(dòng)到新位置,并且將來(lái)任何對(duì)此資源的引用都應(yīng)該使用本響應(yīng)返回的若干個(gè) URI 之一。
如果可能,擁有鏈接編輯功能的客戶端應(yīng)當(dāng)自動(dòng)把請(qǐng)求的地址修改為從服務(wù)器反饋回來(lái)的地址。除非額外指定,否則這個(gè)響應(yīng)也是可緩存的。
新的永久性的 URI 應(yīng)當(dāng)在響應(yīng)的 Location 域中返回。除非這是一個(gè) HEAD 請(qǐng)求,否則響應(yīng)的實(shí)體中應(yīng)當(dāng)包含指向新的 URI 的超鏈接及簡(jiǎn)短說(shuō)明。
如果這不是一個(gè) GET 或者 HEAD 請(qǐng)求,因此瀏覽器禁止自動(dòng)進(jìn)行重定向,除非得到用戶的確認(rèn),因?yàn)檎?qǐng)求的條件可能因此發(fā)生變化。
注意:對(duì)于某些使用 HTTP/1.0 協(xié)議的瀏覽器,當(dāng)它們發(fā)送的 POST 請(qǐng)求得到了一個(gè)301響應(yīng)的話,接下來(lái)的重定向請(qǐng)求將會(huì)變成 GET 方式。
二,302 Found
請(qǐng)求的資源現(xiàn)在臨時(shí)從不同的 URI 響應(yīng)請(qǐng)求。由于這樣的重定向是臨時(shí)的,客戶端應(yīng)當(dāng)繼續(xù)向原有地址發(fā)送以后的請(qǐng)求。只有在Cache-Control或Expires中進(jìn)行了指定
的情況下,這個(gè)響應(yīng)才是可緩存的。
新的臨時(shí)性的 URI 應(yīng)當(dāng)在響應(yīng)的 Location 域中返回。除非這是一個(gè) HEAD 請(qǐng)求,否則響應(yīng)的實(shí)體中應(yīng)當(dāng)包含指向新的 URI 的超鏈接及簡(jiǎn)短說(shuō)明。
如果這不是一個(gè) GET 或者 HEAD 請(qǐng)求,那么瀏覽器禁止自動(dòng)進(jìn)行重定向,除非得到用戶的確認(rèn),因?yàn)檎?qǐng)求的條件可能因此發(fā)生變化。
注意:雖然RFC 1945和RFC 2068規(guī)范不允許客戶端在重定向時(shí)改變請(qǐng)求的方法,但是很多現(xiàn)存的瀏覽器將302響應(yīng)視作為303響應(yīng),并且使用 GET 方式訪問(wèn)在 Location
中規(guī)定的 URI,而無(wú)視原先請(qǐng)求的方法。狀態(tài)碼303和307被添加了進(jìn)來(lái),用以明確服務(wù)器期待客戶端進(jìn)行何種反應(yīng)。
大家都已經(jīng)對(duì)基本的301跳轉(zhuǎn)和302跳轉(zhuǎn)做了解釋, 我從我的理解解答下。
如果從便于搜索引擎友好的話當(dāng)然是301最合適,一般情況下非特意臨時(shí)性URL轉(zhuǎn)移,都盡量用301跳轉(zhuǎn),這樣的一個(gè)好處是搜索引擎會(huì)把該URL的PR值都帶到跳轉(zhuǎn)后的地址,而
302跳轉(zhuǎn)早期被很多網(wǎng)站當(dāng)作作弊手段,已經(jīng)被多數(shù)搜索引擎重點(diǎn)盯查。
而性能方面原則上301跳轉(zhuǎn)和302跳轉(zhuǎn)沒(méi)有多大差別,不過(guò)考慮到搜索引擎?zhèn)€案對(duì)待,也建議使用301跳轉(zhuǎn),301跳轉(zhuǎn)搜索引擎是不對(duì)原地址進(jìn)行訪問(wèn)的,而302跳轉(zhuǎn)除了象@張洪
保所講可能被劫持之外,還有可能會(huì)加大對(duì)服務(wù)器的URL請(qǐng)求數(shù)量。
搜索引擎對(duì)302跳轉(zhuǎn)進(jìn)行判斷時(shí),如果發(fā)現(xiàn)跳轉(zhuǎn)目標(biāo)頁(yè)面URL更加復(fù)雜,就會(huì)返回來(lái)對(duì)原URL進(jìn)行訪問(wèn),尋取一個(gè)簡(jiǎn)單友好的地址,這樣無(wú)形會(huì)加重服務(wù)器性能損耗,因此301跳
轉(zhuǎn)要比302跳轉(zhuǎn)靠普也對(duì)服務(wù)器性能有保障。
三,區(qū)別分析
301的含義是“永久重定向”,而302的含義是“臨時(shí)重定向”
301 代表永久性轉(zhuǎn)移是網(wǎng)頁(yè)更改地址后對(duì)搜索引擎友好的最好方法,只要不是暫時(shí)搬移的情況,都建議使用301來(lái)做轉(zhuǎn)址。
301轉(zhuǎn)向:是當(dāng)用戶或搜索引擎向網(wǎng)站服務(wù)器發(fā)出瀏覽請(qǐng)求時(shí),服務(wù)器返回的HTTP數(shù)據(jù)流中頭信息(header)中的狀態(tài)碼的一種,表示本網(wǎng)頁(yè)永久性轉(zhuǎn)移到另一個(gè)地址。
由于搜索引擎排名算法只是程序而不是人,在遇到302重定向時(shí),并不能像人一樣的去準(zhǔn)確判定哪一個(gè)網(wǎng)址更適當(dāng),這就造成了網(wǎng)址URL劫持的可能性。也就是說(shuō),一個(gè)不道德
的人在他自己的網(wǎng)址A做一個(gè)302重定向到你的網(wǎng)址B,出于某種原因, Google搜索結(jié)果所顯示的仍然是網(wǎng)址A,但是所用的網(wǎng)頁(yè)內(nèi)容卻是你的網(wǎng)址B上的內(nèi)容,這種情況就叫做
網(wǎng)址URL劫持。你辛辛苦苦所寫(xiě)的內(nèi)容就這樣被別人偷走了。
302重定向又稱之為302代表暫時(shí)性轉(zhuǎn)移(Temporarily Moved ), 也被認(rèn)為是暫時(shí)重定向(temporary redirect),一條對(duì)網(wǎng)站瀏覽器的指令來(lái)顯示瀏覽器被要求顯示的不同的
URL,當(dāng)一個(gè)網(wǎng)頁(yè)經(jīng)歷過(guò)短期的URL的變化時(shí)使用。一個(gè)暫時(shí)重定向是一種服務(wù)器端的重定向,能夠被搜索引擎蜘蛛正確地處理。
301重定向與302重定向的區(qū)別在于302重定向是暫時(shí)的重定向,搜索引擎會(huì)抓取新的內(nèi)容而保留舊的網(wǎng)址。
因?yàn)榉?wù)器返回302代碼,搜索引擎認(rèn)為新的網(wǎng)址只是暫時(shí)的。
301重定向是永久的重定向,搜索引擎在抓取新內(nèi)容的同時(shí)也將舊的網(wǎng)址替換為重定向之后的網(wǎng)址。
一、C#實(shí)現(xiàn)301和302跳轉(zhuǎn)
把C#代碼寫(xiě)在前臺(tái)aspx頁(yè)面中,好處是不用編譯就可以發(fā)布。直接使用Redirect就是302跳轉(zhuǎn)。
<% Response.Redirect("http://www.yetiskinlerchat.com"); %>
如果在跳轉(zhuǎn)的時(shí)候加一些HTTP HEADER,在.net 2.0下也可實(shí)現(xiàn)301永久轉(zhuǎn)移。
<%
Response.Status = "301 Moved Permanently";
Response.AddHeader("X-Message", "By fanyong @ SNDA");
Response.AddHeader("Location", "http://www.yetiskinlerchat.com/");
Response.Write("<head><title>Document Moved</title></head><body><h1>Object Moved</h1>This document may be found <a HREF="http://www.yetiskinlerchat.com">here</a></body>");
Response.End();
%>
當(dāng)然,在高版本的Framework中,直接使用:
Response.RedirectPermanent() 實(shí)現(xiàn)301永久轉(zhuǎn)移。
二、js控制跳轉(zhuǎn)
<script type="text/javascript">
window.onload=function redirct2qidian(){
window.location.href="http://www.yetiskinlerchat.com/";
}
</script>
或者通過(guò):
<meta http-equiv="Refresh" content="3; url=http://www.yetiskinlerchat.com" />
這2種方法的缺點(diǎn)是搜索引擎蜘蛛不會(huì)執(zhí)行js,所以使用js跳轉(zhuǎn)不會(huì)把原來(lái)頁(yè)面的權(quán)重轉(zhuǎn)移到新的頁(yè)面,而且搜索引擎對(duì)于javascript重定向以及meta刷新會(huì)認(rèn)定為欺騙而進(jìn)行懲罰。因此不可取。
三、php實(shí)現(xiàn) 301跳轉(zhuǎn)
<?php
Header("HTTP/1.1 301 Moved Permanently");
Header("Location: http://www.yetiskinlerchat.com");
?>