`

nginx location

阅读更多


All remaining directives with conventional strings, longest match first. If this match used the ^~ prefix, searching stops.

If #3 yielded a match, that result is used. Else the match from #2 is used.

所有剩下的常规字符串,最长的匹配。如果这个匹配使用^〜前缀,搜索停止。

如果第3条规则产生匹配的话,结果被使用。否则,如同从第2条规则被使用。

---------- 翻译成人话 ----------

先找所有的location

找到=匹配, 就不再找了, 执行

上面的没有, 继续找
找到^~, 就不再找了, 执行

上面的没有, 继续找
找到正则, 按 1.最大匹配, 2. 物理顺序 定优先

上面的没有, 继续找
找到普通匹配, 按 1.最大匹配, 2. 物理顺序 定优先


语法 匹配规则
普通匹配(遵循最大前缀匹配规则,优先度比正则低)
= 精确(严格)匹配, 优先度最高,后续不再匹配正则
^~ 非正则匹配(依然遵循最大前缀匹配规则),后续不再匹配正则
~ 表示区分大小写的正则匹配
~* 表示不区分大小写的正则匹配
/ 通用匹配,任何请求都会匹配到(本质上等同于语法空)
 


---------- 翻译成人话 ----------
第一优先级
=, ^~

第二优先级
正则, 同样正则下, 最大匹配和物理顺序

剩下
普通, 最大匹配和物理顺序




  ##### location 匹配测试 #####
  普通location, 这个(空)不能与 ^~一样, 因为同属普通匹配
  #location  /a/c {
      return 555;  }
  #正则location
  location ~ /a/c {
      return 999;
  }
  #正则location
  location ~* /a/c {
      return 888;
  }
  #普通location, 第二优先级, 与 (空)匹配 不能一样, 因为同属普通匹配
  #location ^~ /a/c {
  #    return 777;
  #}
  #精确location, 最大优先级, 可以与普通匹配一样
  location = /a/c {
      return 666;
  }







分享到:
评论

相关推荐

    Nginx Location 正则_NginxLocation正则.md_

    nginx正则表达式. : 匹配除换行符以外的任意字符? : 重复0次或1次+ : 重复1次或更多次* : 重复0次或更多次\d :匹配数字^ : 匹配字符串的开始$ : 匹配字符串的介绍{n} : 重复n次{n} : 重复n次或更多次[c] :...

    nginx location配置详细解释.pdf

    ### Nginx Location配置详细解析 #### 一、引言 Nginx 是一款轻量级的 Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在 Linux 环境下有着非常好的性能表现。在 Nginx 的配置文件中,`location` ...

    nginx配置location时容易出现的误区

    ### Nginx 配置 Location 时常见的误区详解 在 Nginx 的配置过程中,`location` 是一个非常重要的概念,用于控制特定 URL 模式的请求处理方式。然而,在实际应用中,不少开发者对 `location` 的理解存在一定的误区...

    nginx location中uri的截取的实现方法

    在Nginx配置中,`location`指令是用于匹配HTTP请求URI并执行相应处理的关键部分。本文将深入探讨如何在`location`中实现URI的截取,并解释`root`、`alias`以及`proxy_pass`指令在处理URI时的不同行为。 ### 1. `...

    NGINX location 在配置中的优先级.docx

    NGINX location 配置中的优先级详解 NGINX 中的 location directive 是一个非常重要的配置指令,它可以根据不同的 URL 模式来匹配不同的请求路径。但是,location 的配置顺序并不是固定的,而是根据 Location ...

    nginx location匹配实例详解

    您可能感兴趣的文章:Nginx配置指令location匹配符优先级和安全问题详解Nginx location 匹配规则Nginx服务器的location指令匹配规则详解利用nginx如何匹配多个条件Nginx location匹配规则的方法示例简介Nginx中的...

    Nginx关于location的匹配规则详解.docx

    **Nginx中的Location匹配规则详解** 在Nginx服务器配置中,`location`指令是核心部分之一,用于处理HTTP请求。它根据指定的规则来匹配URL,从而决定如何处理客户端的请求。本文将深入探讨Nginx `location`的匹配...

    nginx location 配置 正则表达式实例详解

    **Nginx Location 配置正则表达式详解** 在Nginx服务器配置中,`location`指令扮演着至关重要的角色。它允许我们根据请求的URI(Uniform Resource Identifier)进行精细化处理,例如转发请求到不同的后端服务、提供...

    nginx location中多个if里面proxy_pass的方法

    在Nginx配置中,`location`指令是用于定义URL路由和处理规则的关键部分,它决定了请求应如何被代理、重定向或静态文件服务。在本文中,我们将深入探讨`location`指令的匹配机制以及在多个`if`语句中使用`proxy_pass`...

    Nginx Location 指令简明指南

    Nginx的配置文件中包含多个指令,其中Location指令是用于处理特定URI请求的关键部分。本文将详细介绍Nginx Location指令的基本语法、匹配过程、配置实例以及Nginx中的全局变量。 首先,Location指令的基本语法非常...

    nginx的各项详细配置-超多注释

    Nginx的配置文件主要由多个块组成,包括全局块、events块、http块、server块和location块。它们之间遵循包含关系,逐层嵌套。 - **全局块**: 位于配置文件顶部,定义全局生效的参数,如工作进程数(worker_...

    Mars3D+nginx 搭建离线API服务,本地访问

    3. **配置nginx**:编辑nginx的配置文件(通常是`nginx.conf`),在`http`或`server`块内新增一个location,指向Mars3D的API目录。例如: ```nginx location /api/ { root /path/to/Mars3D/api; try_files $uri ...

    详解Nginx location 匹配规则

    在Web服务器配置中,location指令用于控制不同URL请求的访问规则,是Nginx配置中非常核心的部分。接下来,我们将详细探讨Nginx location指令的匹配规则,以及如何正确地配置它们来处理各种HTTP请求。 首先,...

    nginx_location

    Nginx 的 `location` 指令是配置 Web 服务器路由请求的关键部分,用于根据请求的 URI 来决定如何处理请求。以下是对 `location` 指令的详细解释和最佳实践: 1. **匹配规则**: - `=`:精确匹配,如果请求的 URI ...

    详解Nginx Location配置

    Location指令允许你定义一系列规则,以便当客户端请求到达时,Nginx能够选择最适合的处理策略。 首先,理解Nginx配置文件的基本结构至关重要。配置文件主要由Server和Location两个区块构成。Server区块定义了服务器...

    Nginx location匹配规则的方法示例

    在Nginx的配置中,location块是用来根据用户请求的URI来定位到具体的处理方式,即它用来定义请求的路由规则。Nginx的location匹配规则非常灵活和强大,可以实现精确匹配、前缀匹配、正则表达式匹配等多种方式。在...

Global site tag (gtag.js) - Google Analytics