nginx的location的优先级和匹配方式

nginx的location的优先级和匹配方式

在http模块中有server,server模块中有location,location匹配的是uri

在一个server中,会有多个location,如何来确定匹配哪个location

niginx的正则表达式

^ 字符串的起始位置

$ 字符串的结束位置

* 匹配所有

  • 匹配前面的字符最少一次

? 匹配前面的字符0次或者1次

. 任意单个字符

{n} 连续重复出现n次

{n,m} 连续重复出现n到m次

c 匹配单个字符c

() 分组

| 或

location匹配的分类:

location /

location ~*

1、精确匹配location = /test{...}

完整的路径,一个字不能少,一个字不能错

2、正则匹配location ~/{}

location ^~ 前缀匹配,以什么为开头

location ~ 区分大小写进行匹配

location ~* 不区分大小写进行匹配

!~ 区分大小写取反匹配

!~* 不区分大小写取反匹配

3、一般匹配location /test{}

location匹配一旦匹配成功,就不再向下匹配

location匹配的优先级

大致:【精确匹配 > 正则匹配 > 一般匹配】

具体:【 location = 完整路径 > location ^~ > location ~,~* > location /test > location /

精确匹配,优先级最高

其次是正则匹配

一般匹配优先级最低

工作中配置location的原则:

1、 网站首页

(一般都是静态页面): 都是精确匹配 (匹配网站的根工作目录)

location =/{

}

2、处理静态文件的请求

目录匹配和后缀匹配

location ^~ /static {

}

location ~* \.{html|jpg|jpeg|gif|png} $ {

}

3、一般规则

动态请求 ,把动态请求转发到后端

location /{

proxy_pass http://tomcat_server;

}

相关推荐
☆凡尘清心☆22 分钟前
CentOS Stream 9 源码编译搭建 Zabbix7.0.29 完整部署方案(部署成功)
linux·运维·centos
予昊34 分钟前
Linux 资源控制实战分析:用 LXC 亲手造一个 “迷你虚拟机“
linux·运维·服务器
xiaoxiangsiyan44 分钟前
RHCE之2026年全套考点详解
运维·前端·网络·chrome·学习·rhce
love530love1 小时前
彻底清理 Windows 右键“打开方式“中的重复/失效程序项(PyCharm 多版本残留实战 + 自动化脚本)
运维·人工智能·windows·pycharm·jetbrains·toolbox
zhexunnb1 小时前
SAP赋能芯片封装行业,打造封测企业全链路数字化底座
运维
蓝速科技1 小时前
蓝速科技会议预约屏深度评测:为何安卓系统是智慧办公长期最优解
运维·人工智能·科技
2401_834636991 小时前
保姆级 K8s 运维:RBAC 认证 + Dashboard+Local/NFS 动态卷实战
运维·容器·kubernetes
hyf3266331 小时前
低成本站群泛程序部署:单服务器托管百站稳定运行教程
运维·服务器·前端·搜索引擎·蜘蛛池
小此方1 小时前
Re:Linux系统篇(五十六)线程篇 · 九:基于阻塞队列的生产者消费者模型与条件变量
linux·运维·服务器
Escalating_xu1 小时前
【Linux】库制作与链接原理:从静态库、动态库到 ELF、重定位、GOT 与 PLT
linux·运维·服务器