发表于 2018-11-13 12:13:35

nginx break last-11398933

  location /test1.txt/ {
  rewrite /test1.txt//test2.txt break;
  }
  location ~ test2.txt {
  return 508;
  }
  使用break会停止匹配下面的location,直接发起请求www.xxx.com/test2.txt,由于不存在文件test2.txt,则会直接显示404。
  使用last的话,会继续搜索下面是否有符合条件(符合重写后的/test2.txt请求)的location。此时,/test2.txt刚好与面location的条件对应上了,进入花括号{}里面的代码执行,这里会返回508。
  last,重写后的规则,会继续用重写后的值去匹配下面的location。
  break,重写后的规则,不会去匹配下面的location。使用新的规则,直接发起一次http请求了。

页: [1]
查看完整版本: nginx break last-11398933