location优先级说明

location和配置跟location的顺序没有太大关系。跟location表达式的类型有关。相同类型的表达式,字符串长的会优先匹配。
以下是按优先级排列说明:
第一优先级:等号类型(=)的优先级最高。一旦匹配成功,则不再查找其他匹配项。
第二优先级:^~类型表达式。一旦匹配成功,则不再查找其他匹配项。
第三优先级:正则表达式类型(~ ~*)的优先级次之。如果有多个location的正则能匹配的话,则使用正则表达式最长的那个。
第四优先级:常规字符串匹配类型。按前缀匹配。

示例

location / {}
前缀模式,匹配所有uri,最短匹配
所以,这个location为兜底location。即当其他所有location都不匹配时,命中这个location。
location = / {
    [ 配置 A ]
}

location / {
    [ 配置 B ]
}

location /documents/ {
    [ 配置 C ]
}

location ^~ /images/ {
    [ 配置 D ]
}

location ~* \.(gif|jpg|jpeg)$ {
    [ 配置 E ]
}

uri:“/”
精确匹配:配置 A
uri:“/index.html”
兜底匹配:配置 B
uri:“/documents/document.html”
最长location匹配:配置 C
uri:“/images/1.gif”
非正则匹配:配置 D
uri:“/documents/1.jpg”
正则匹配:配置 E

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 118,164评论 14 132
  • 配置运行Nginx服务器用户(组) 用于配置运行Nginx服务器用户(组)的指令是user,其语法格式为: use...
    吃瓜的东阅读 3,633评论 0 38
  • 大凡女作家,如果婚姻美满,她几乎创作不出什么东西来,这是创作界一个普遍规律。欢愉之词难工,愁苦之言易巧,所以经常说...
    甜蜜蜜纯蜂蜜阅读 98评论 0 0
  • 什么是 Bootstrap? Bootstrap 是一个用于快速开发 Web 应用程序和网站的前端框架。Boots...
    亮亮叔家的小笔笔阅读 477评论 2 4
  • 《日日是好日》-2239-喜悦 001过好每一天 在我们每一天的平常日子里,都会遇到高兴或者痛苦的事情。如果我们把...
    蔷薇1127阅读 87评论 3 2