Nginx的Rewrite的配置

2021-06-16 20:39:39 字數 605 閱讀 8825

nginx的rewrite

經過網上查閱和測試,發現nginx的rewrite規則和apache的rewite規則差別不是很大,幾乎可以直接使用。比如在apache中這樣寫規則

1rewrite ^/([0-9]).html$ /viewthread.php?tid=$1 last;

而在nginx中寫成這樣寫是無法啟動的,解決的辦法是加上兩個雙引號:

1rewrite"^/([0-9]).html$"/viewthread.php?tid=$1 last;

同時將rewriterule為rewrite,基本就實現了nginx的rewrite規則到apache的rewite規則的轉換。

rewrite的flags

last - 基本上都用這個flag。

break - 中止rewirte,不在繼續匹配

redirect - 返回臨時重定向的http狀態302

permanent - 返回永久重定向的http狀態301

Nginx基礎的Rewrite規則

rewrite是nginx乙個特別重要的指令,該指令可以使用正規表示式改寫uri。可以指定乙個或多個rewrite指令,按順序匹配 區分大小寫匹配 不區分大小寫匹配 和 區分大小寫不匹配及不區分大小寫不匹配 f和 f 判斷是否存在檔案 d和 d 判斷是否存在目錄 e和 e 判斷是否存在檔案或目錄 x...

Nginx中的rewrite指令

rewite 在server塊下,會優先執行rewrite部分,然後才會去匹配location塊 server中的rewrite break和last沒什麼區別,都會去匹配location,所以沒必要用last再發起新的請求,可以留空.location中的rewirte 不寫last和break 那...

Nginx中的rewrite指令

rewite 在server塊下,會優先執行rewrite部分,然後才會去匹配location塊 server中的rewrite break和last沒什麼區別,都會去匹配location,所以沒必要用last再發起新的請求,可以留空.location中的rewirte 不寫last和break 那...