nginx的rewrite中break和last区别

2019-09-09 分类:Nginx, 系统服务 阅读(29) 评论(0)

配置文件,没有echo模块的话可以改成return测试。

server{
    listen 80;
    server_name test.com;
    access_log /tmp/test_nginx.log main;

    location /break/ {
        rewrite /break/(.*) /break/test/$1 break;
        location /break/test/ {
              echo "break-test";
        }
        echo "break";

    }

    location /last/ {
        rewrite /last/(.*) /test/$1 last;
        echo "last";
    }

    location /test/ {
        echo "test";
    }

}

访问结果

1.http://test.com/break/a.txt--------->break

2.http://test.com/last/a.txt--------->test

3.http://test.com/test/a.txt--------->test

 

结论:

last:停止当前这个请求,并根据重写后的规则,重新发起一个请求。

break:停止当前这个请求,在当前字段继续向下执行,但不会匹配其他location。

标签:

您可能也喜欢:

nginx负载均衡的五种算法

参考:https://blog.csdn.net/chenyulancn/article/details/70800991   1.轮询(默认),每个请求按时间顺序逐一分配到不同的后端服务器,如果后端某台服务器死机,故障系统被自动剔除,使用户访问不受影响。 2.Weight,指定轮询权值,...

more

nginx负载均衡proxy_next_upstream

官方文档: http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_next_upstream   作用: 当后端服务器返回指定的错误时,将请求传递到其他服务器。 error与服务器建立连接,向其传递请求或读取响应头时发...

more

nginx中if指令的使用

if指令用于判断一个条件,如果条件成立,则后面的大括号内的语句将执行 语法:if (condition) { … } 默认值:none 使用字段:server, location 在默认情况下,if指令默认值为空,可在nginx配置文件的server、location部分使用,另外,if指令可以在判...

more

欢迎新朋友你的到来!
还没有人抢沙发呢~
昵称
邮箱
网站

登录

忘记密码 ?

切换登录

注册