文章轉載自PHP使用header+Location實現網站301重定向| 蘭州飛雨SEO | http://www.feiyuseo.com/seo-jishu/145.html
對於我們SEO人員來說,有的時候需要對網站進行重定向。一般來說,對網站重定向的http回傳狀態碼是301和302兩種。就透過實例來為你介紹一下怎麼透過PHP使用header+Location實現網站301重定向。
關於PHP網站的定向問題,在百度上面搜尋的一中午,發現使用最多的就是使用「header+Location」的重定向方法。下面我給最受歡迎的程式碼:
<?php header("Location: http://www.feiyuseo.com"); exit; ?>
但是透過我對HTTP狀態碼查詢發現,透過以上程式碼跳轉重定向後的回傳碼是302狀態。我們先來看看什麼是302返回碼?搜尋引擎回傳302錯誤表示被要求的資源暫時轉移(Moved temporatily),然後會給出一個轉移後的URL,而瀏覽器在處理伺服器回傳的302錯誤時,原則上會重新建立一個TCP連接,然後再取重定向後的URL的頁面;但是如果頁面存在於快取中,則不重新取得。但是,由於黑帽SEO濫用302重定向進行作弊,302重定向已經被視為垃圾訊息,遭到各大搜尋引擎的打擊。因此,上面的程式碼回傳302狀態是不完善的,也是存在被百度等搜尋引擎K站的風險的。
請看第二種方法:先回傳301狀態碼後再重定向。
<?php header('HTTP/1.1 301 Moved Permanently'); header(”Location: http://www.feiyuseo.com”); exit; ?>
上面的這一段程式碼可以說是解決了使用Location產生302狀態的問題,因此是比較完善的也是比較安全的網站重定向方法。就在準備收工的時候,我又突然發現了一段跳轉代碼,也是很不錯的,比這個更精簡,在這裡我也為大家附上,一起分享。
<?php header("Location: http://www.feiyuseo.com",TRUE,301);); exit; ?>
透過上面的這一行程式碼就實現的網站的301重定向,並且高效、安全、可靠運作。
以上就介紹了 PHP使用header+Location實現網站301重定向,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。