Rewrite規則含義就是某個URL重寫成特定的URL,從某種意義上說爲了美觀或者對搜索引擎友好,提升收錄量及排名等。html
Rewrite規則的最後一項參數爲flag標記,支持的flag標記主要有如下幾種: nginx
1) last :至關於Apache裏的(L)標記,表示完成rewrite;瀏覽器
2) break;本條規則匹配完成後,終止匹配,再也不匹配後面的規則 學習
3) redirect:返回302臨時重定向,瀏覽器地址會顯示跳轉後的URL地址 網站
4) permanent:返回301永久重定向,瀏覽器地址欄會顯示跳轉後的URL地址 搜索引擎
5) last和break用來實現URL重寫,瀏覽器地址欄URL地址不變。 server
a) 例如用戶訪問www.test.com,想直接跳轉到網站下面的某個頁面,www.test.com/new.index.html如何來實現呢?htm
咱們能夠使用Nginx Rewrite 來實現這個需求,具體以下:索引
在server中加入以下語句便可:字符串
rewrite ^/$ http://www.test.com/index01.html permanent;
*表明前面0或更多個字符
+表明前面1或更多個字符
?表明前面0或1個字符
^表明字符串的開始位置
$表明字符串結束的位置
。爲通配符,表明任何字符
b) 例如多個域名跳轉到同一個域名,nginx rewrite規則寫法以下:
server
{
listen 80;
server_name www.wugk.com wugk.com;
if ($host != ‘www.wugk.com’ ) {
rewrite ^/(.*)$ http://www.wugk.com/$1 permanent;
}
更多深刻的rewrite能夠繼續學習。