0
点赞
收藏
分享

微信扫一扫

Nginx架构篇(20)Rewrite - last 和 break标记

王传学 2022-06-11 阅读 171

例九 last 和 break标记 

last标记在本条rewrite规则执行完后,会对其所在的server { … } 标签重新发起请求;
break标记则在本条规则匹配完成后,停止匹配,不再做后续的匹配。

另有些时候必须使用last,比如在使用alias指令时,而使用proxy_pass指令时则必须使用break。
如果location中rewrite后,还需要进行其他处理,如动态fastcgi请求(.PHP,.jsp)等,要用last继续发起新的请求
(根的location使用last比较好, 因为如果有.php等fastcgi请求还要继续处理

环境:

准备三个页面
mkdir /usr/share/nginx/html/test
echo 'break' > /usr/share/nginx/html/test/break.html
echo 'last' > /usr/share/nginx/html/test/last.html
echo 'test' > /usr/share/nginx/html/test/test.html

break,last标记:

vim /etc/nginx/conf.d/default.conf 
server {
listen 80;
location / {
root /usr/share/nginx/html;
index index.html index.php;
}

location /break {
rewrite .* /test/break.html break;
root /usr/share/nginx/html;
}

location /last {
rewrite .* /test/last.html last;
root /usr/share/nginx/html;
}

location /test {
rewrite .* /test/test.html break;
root /usr/share/nginx/html;
}

验证:

elinks ip/break

Nginx架构篇(20)Rewrite - last 和 break标记 _nginx

elinks ip/last   

Nginx架构篇(20)Rewrite - last 和 break标记 _nginx_02

elinks ip/test

Nginx架构篇(20)Rewrite - last 和 break标记 _nginx_03


举报

相关推荐

0 条评论