zoukankan      html  css  js  c++  java
  • nginx location URI匹配规则

    当nginx收到一个请求后,会截取请求的url部份,去搜索所有location指令中定义的URI匹配模式。在server模块中可以定义多个location指令来匹配不同的url请求,多个不同的location配置的URI匹配模式,总体的匹配原则是:

    先匹配普通字符串模式,再匹配正则模式。

    只识别URI部分,例如:

    /test/abc/user.do?name=xxxx

    一个请求过来后,nginx匹配这个请求的流程如下:

    1:先查找是不有=开头的精确匹配,如:location = /test/abc/user.do {.....}

    2 : 再查找普通匹配,以最大前缀为原则,如有以下两个location,则会匹配后一项

    location /test/ {....}

    location /test/abc {....}

    3 : 匹配到一个普通格式后,搜索并未结束,而是暂存前匹配的结果,并继续搜索正则匹配模式

    4 : 所有正则匹配模式location中找到“第一个“匹配项后,就以此项“最终匹配结果“

    注意:所有正则匹配规则,受定义的前后顺序影响,但普通匹配模工不会!!!!

    5:如果未找到匹配项,则以 3中缓存的结果为最终匹配结果

    6:如果一个匹配都没搜到,则返回404

  • 相关阅读:
    ZOJ 3018
    poj2464
    Gauss
    【C】关于内存地址
    【C】typedef与define的区别
    C位移操作
    操作系统使用批处理文件更改网络配置
    【Linux】查看某个进程的线程数量(转)
    数据结构快速排序
    C++Explanation of ++val++ and ++*p++ in C
  • 原文地址:https://www.cnblogs.com/bass6/p/6438646.html
Copyright © 2011-2022 走看看