301跳轉(zhuǎn)就是告訴訪問者頁面己經(jīng)永遠(yuǎn)到了新的頁面了,在php中使用301跳轉(zhuǎn)我們利用header()函數(shù)發(fā)送301狀態(tài)代碼告訴瀏覽器,然后再實(shí)現(xiàn)頁面跳轉(zhuǎn)即可。
PHP純代碼跳轉(zhuǎn),代碼如下:
但是這種返回的狀態(tài)碼是302,如果要實(shí)現(xiàn)301跳轉(zhuǎn)的話,需要在之前設(shè)置下狀態(tài)碼,代碼如下:
更簡(jiǎn)單的PHP跳轉(zhuǎn)301代碼,代碼如下:
可能出現(xiàn)的問題
Warning: Cannot modify header information - headers already sent by把文件編碼改成 UTF-8無BOM格式,可解決該問題,如果還是有問題,就檢查下該代碼前是否定義了字符串變量,刪除這個(gè)變量再試試。
附:30*返回狀態(tài)碼的區(qū)別
301,302 都是HTTP狀態(tài)的編碼,都代表著某個(gè)URL發(fā)生了轉(zhuǎn)移,不同之處在于:
1.301 redirect: 301 代表永久性轉(zhuǎn)移(Permanently Moved)
2.302 redirect: 302 代表暫時(shí)性轉(zhuǎn)移(Temporarily Moved )
這兩種轉(zhuǎn)移在使用的時(shí)候有啥好處或者問題?
301 重定向是網(wǎng)頁更改地址后對(duì)seo搜索引擎友好的最好方法,只要不是暫時(shí)搬移的情況,都建議使用301來做轉(zhuǎn)址。
302 重定向是臨時(shí)性轉(zhuǎn)移。