基本语法
Syntax: rewrite regex replacement [flag]
Default: —
Context: server, location, if
regex: 匹配 URL 的正则表达式
replacement: 目标 URL
flag
参数 | 描述 |
---|---|
last | 停止 rewrite 检测 |
break | 停止 rewrite 检测 |
redirect | 返回 302 临时重定向,地址栏会显示跳转后的地址 |
permanent | 返回 301 永久重定向,地址栏会显示跳转后的地址 |
示例
server {
listen 508;
server_name dengj.ojandapple.site;
#access_log /var/log/nginx/log/host.access.log main;
root /opt/app/code;
location ~ ^/break {
rewrite ^/break /test/ break; # 在root 指定的目录下寻找/test/,没有找到返回404
}
location ~ ^/last {
rewrite ^/last /test/ last; # 重新建立一个/test/ 的连接,以/test/访问服务端
}
location ~ ^/baidu {
rewrite ^/baidu https://www.baidu.com/ permanent; # 永久重定向
#rewrite ^/imooc http://www.baidu.com/ redirect; # 临时重定向
}
location /test/ {
default_type application/json;
return 200 '{"status":"success"}';
}
}