新聞中心
大家好,今天小編關(guān)注到一個比較有意思的話題,就是關(guān)于Linux下Nginx設(shè)置301重定向的方法包括域名、目錄等設(shè)置方法,于是小編就整理了幾個相關(guān)介紹詳細(xì)的解答,讓我們一起看看吧。

- 本文目錄導(dǎo)讀:
- 1、 前言
- 2、 什么是301重定向?
- 3、 設(shè)置域名級別的301重定向
- 4、 設(shè)置目錄級別的301重定向
- 5、 總結(jié)
前言
在網(wǎng)站運營中,經(jīng)常會遇到需要修改URL的情況。例如更換域名、調(diào)整網(wǎng)站架構(gòu)等。這時候就需要使用301重定向來保證原有鏈接能夠正確地指向新的頁面。本文將介紹如何在Linux下使用Nginx進行301重定向設(shè)置。
什么是301重定向?
HTTP狀態(tài)碼中,301表示永久性移動(Permanently Moved),即請求的資源已被分配了新的URI地址,并且以后應(yīng)從新地址訪問。當(dāng)瀏覽器發(fā)現(xiàn)服務(wù)器返回的狀態(tài)碼為301時,它會自動跳轉(zhuǎn)到新地址。
設(shè)置域名級別的301重定向
假設(shè)我們要將舊域名www.old.com全部指向新域名www.new.com:
1. 編輯Nginx配置文件:sudo vim /etc/nginx/sites-available/default
2. 在server塊內(nèi)添加以下代碼:
```
server {
listen 80;
server_name www.old.com;
return 301 $scheme://www.new.com$request_uri;
}
其中l(wèi)isten表示監(jiān)聽端口號,在這里是80;server_name表示要匹配的主機名稱,在這里是www.old.com;return則用于返回一個特殊狀態(tài)碼和頭信息給客戶端瀏覽器,并讓它自動跳轉(zhuǎn)到新地址。
3. 保存并退出配置文件:wq!
4. 重啟Nginx服務(wù):sudo service nginx restart
設(shè)置目錄級別的301重定向
假設(shè)我們要將舊網(wǎng)站架構(gòu)中的所有文章頁面都指向新網(wǎng)站架構(gòu)中對應(yīng)的頁面:
location /old_dir/ {
rewrite ^/old_dir/(.*)$ $1 permanent;
其中l(wèi)ocation表示匹配URL路徑,這里是匹配以/old_dir/開頭的路徑;rewrite則用于實現(xiàn)URL重寫功能,把舊目錄下的URI地址映射到新目錄下對應(yīng)的URI地址,并返回301狀態(tài)碼。
總結(jié)
使用Linux下Nginx設(shè)置301重定向可以幫助我們有效地處理各種鏈接修改情況。無論是域名級別還是目錄級別,只需簡單幾步即可完成設(shè)置。建議在進行任何鏈接修改前備份好原有數(shù)據(jù)和配置文件。
新聞名稱:Linux下Nginx設(shè)置301重定向的方法,包括域名、目錄等設(shè)置方法
分享路徑:http://www.dlmjj.cn/article/dpeojjc.html


咨詢
建站咨詢
