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 /**** ****】**** #### ****精确匹配,优先级最高**** ![](https://file.jishuzhan.net/article/1713330889032732673/09975bda611d9f6b10e7271c240fcf2f.webp) #### ****其次是正则匹配**** ****↓**** ![](https://file.jishuzhan.net/article/1713330889032732673/ef023673ff31a30002a435a1118b8abe.webp) #### ****一般匹配优先级最低**** ### ****工作中配置location的原则:**** #### ****1、**** ****网站首页**** ****(一般都是静态页面):**** ****都是精确匹配**** ****(匹配网站的根工作目录)**** location =/{ } #### 2、****处理静态文件的请求**** ****目录匹配和后缀匹配**** location \^\~ /static { } location \~\* \\.{html\|jpg\|jpeg\|gif\|png} $ { } #### 3、****一般规则**** ****动态请求**** ****,把动态请求转发到后端**** location /{ proxy_pass [http://tomcat_server;]( "http://tomcat_server;") }

相关推荐
北京智和信通2 分钟前
智和信通助力某信息工程大学实现校园全域运维监控
运维·服务器·网络监控·网络管理软件·网管软件·网管运维·网络管理系统
老王谈企服3 分钟前
从技术选型角度看跨境电商全流程自动化解决方案的演进
运维·自动化
运维老郭5 分钟前
【K8S调度避坑指南】5类调度策略硬核拆解:nodeSelector不够用?亲和性、污点与容忍度生产级实战
运维·云原生·kubernetes
xingfujie9 分钟前
前言:从零到一,系统掌握 K8s + DevOps + 微服务
linux·运维·微服务·云原生·容器·kubernetes·devops
Fanfanaas13 分钟前
Linux 系统编程 文件篇 (一)
linux·运维·服务器·c++·学习
悟乙己22 分钟前
深度解析 SoftwareCopyright-Skill:从源码到合规文档的 AI 自动化之旅
运维·人工智能·自动化
j_xxx404_24 分钟前
Linux信号机制:从键盘到内核、进阶实战硬核剖析
linux·运维·服务器·c++·人工智能·ai
Mr. zhihao24 分钟前
从 `cat file.txt` 到屏幕:一次 Linux 文件读取的完整旅程
linux·运维·服务器
李日灐30 分钟前
< 12 > Linux进程:进程虚拟地址空间机制 —— 内存管理的美学
linux·运维·算法
码完就睡35 分钟前
Linux——进程间通信
linux·运维·服务器