nginx——location匹配流程图
Posted 一条寻找快乐的咸鱼
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx——location匹配流程图相关的知识,希望对你有一定的参考价值。
location匹配流程图
location理解
1.收到url请求后,nginx首先进行精确匹配(有“=”的为精确匹配),如果匹配成功,则直接返回精确匹配结果,如果没有命中则会继续向下进行普通匹配
2.普通匹配分为三种情况
(1)没有命中,继续向下执行正则匹配
(2)命中单个普通匹配,记忆匹配结果,不会立即返回,会继续匹配正则规则
(3)命中多个普通匹配,记忆最长匹配的结果,不会立即返回,会继续匹配正则规则
3.依次匹配正则匹配,匹配结果也分为三种
(1)命中正则匹配,直接反馈正则匹配的结果
(2)没有命中正则匹配,则会返回普通匹配最长的结果(最长指的是虚拟路径的长度,例如 location /a和location /aaa 则会匹配匹配/location /aaa)
可以理解为location匹配的优先级, 精确匹配 > 正则匹配 > 普通匹配
4.nginx反向代理配置location后报错404
(1)location /boss {....} 这种情况需要保证你的项目目录为boss。假如你的项目目录为根,例如使用http:127.0.0.1:8100就可以访问,则配置如下
location = /app { proxy_pass http://10.10.10.31:8100/; } ##端口后面的“/”是重点, 上述配置例如访问 http:/0.0.0.0/app 就会转到 http://10.10.10.31:8100/ location = /app { proxy_pass http://10.10.10.31:8100; } ##假如后面没有"/",上述案例访问http://0.0.0.0/app,则会转发到http://10.10.10.31:8100/app
以上是关于nginx——location匹配流程图的主要内容,如果未能解决你的问题,请参考以下文章