301永久跳轉:當用戶或搜索引擎向網站服務器發出瀏覽請求時,服務器返回的HTTP數據流中頭信息中的狀態碼的一種,表示本網頁永久性轉移到另一個地址。
302臨時跳轉:也是狀態碼的一種,意義是暫時轉向到另外一個網址。
主要區別
一句話,302容易被搜索引擎視為spam,301則不會。
nginx與apache規則區別不大,本代碼實現server110.com跳轉到www.server110.com ,自己根據實際情況修改。
301永久跳轉
找到域名配置文件的Server或者location段,適當位置添加下面代碼:
rewrite ^/(.*)$ http://www.server110.com/$1 permanent;
301代碼詳解:
rewrite #重寫跳轉規則
http://www.server110.com/$1 #跳轉到的地址,后面的$1代表鏈參數也一起跳轉。比如訪問server110.com/123就會跳轉到www.server110.com/123 沒有的話。就會直接跳轉到www.server110.com
permanent #301永久跳轉
302臨時跳轉
理解了上面的301跳轉就更好理解下面的302跳轉,就一個參數的差別。
找到域名配置文件的Server或者location段,適當位置添加下面代碼:
rewrite ^/(.*)$ http://www.server110.com/$1 redirect;
302代碼詳解:
rewrite #重寫跳轉規則
http://www.server110.com/$1 #跳轉到的地址,后面的$1代表鏈參數也一起跳轉。比如訪問server110.com/123就會跳轉到www.server110.com/123 沒有的話。就會直接跳轉到www.server110.com
redirect #302臨時跳轉
添加完后,重啟nginx,沒有報錯的話,就成功了。