💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
## rewrite功能 1. 根据指定正则表达式匹配规则,重写URL;特别注意这里重写的是URL不是文件路径; ## rewrite语法结构 语法: ``` rewrite regex replacement [flag] ``` 默认值: ``` 无 ``` 上下文: ``` server | location | if ``` 示例: ``` rewrite /images/(.*\.jpg)$ /pic/$1; ``` ## rewrite中的flag 1. last : 重写后的URI发起新请求,再次进入server段,重试location中的匹配; 2. break : 直接使用重写后的URI,不再匹配其他location中语句; 3. redirect : 返回302重定向; 4. permanent : 返回301永久重定向; ## 实例1 无论/search 后面跟什么内容,最后都会被永久重定向到百度页面; ``` location /search { rewrite ^/(.*) http://baidu.com permanent; } ``` ## 实例2 创建三个文件夹,每个文件夹下有个1.html文件; ![](https://img.kancloud.cn/5b/57/5b57240a8a69aeba4d252b3b143b5aa3_986x166.png) ``` location /images { rewrite /images/(.*) /pics/$1; //将URL /images/1.html 重写为 /pics/1.html } location /pics { rewrite /pics/(.*) /photos/$1; //将URL /pics/1.html 重写为 /photos/1.html } location /photos { } ``` 结果: ![](https://img.kancloud.cn/6f/0b/6f0b487134607c207d6fe4a713162afd_856x116.png) ## 实例3 ``` location /images { rewrite /images/(.*) /pics/$1 break; //将URL /images/1.html 重写为 /pics/1.html, 并且不再匹配其他location段; } ``` ![](https://img.kancloud.cn/62/92/629260a3f2f74b7542285b8c1731b1dc_842x144.png) ## 实例4 ``` location /images { rewrite /images/(.*) /pics/$1 last; //将URL /images/1.html 重写为 /pics/1.html, 重新进入server段后匹配了/pics location段,然后又被重写 } ``` ![](https://img.kancloud.cn/49/1d/491dc1e41b0b20814bfc1036af7cb839_880x140.png)