网站首页 > 技术教程 正文
相同点
- 都可以匹配任何以 /xxx 开头的请求 URI
- 都会根据用户请求的URL继续在配置中查找,直到找到最长匹配的;但是如果过程中有正则匹配的时候 /xxx会立即停止,但 ^~ /xxx不会
不同点
优先级不同:
- /xxx 会低于 ^~ /xxxx
- /xxx 会低于 正则匹配
- ^~ /xxxx 会高于正则匹配
例子
例1:查找最长匹配
比如用户访问URL为 /api/front/doc/info
nginx 配置如下
location /api {}
location /api/front {}
location /api/front/doc {}
location /api/front/software/info {}
nginx会先找到 /api的 location;但是会继续去配置中查找,然后找到/api/front的location;然后依次类推最后找到最长的即 location /api/front/doc {}
例2:/xxx 低于 正则匹配
用户请求URL为 /api/font/doc/info
配置如下
location ^~ /api {
return 200 "<html><body>^~ /api </body></html>";
}
location ^~ /api/front {
return 200 "<html><body>^~ /api/front </body></html>";
}
location /api/front/doc {
return 200 "<html><body>^~ /api/front/doc</body></html>";
}
location ~* /api/.* {
return 200 "<html><body>/api</body></html>";
}
虽然 /api/front/doc 是最长匹配的,但因为有正则 ~* /api/.* 匹配了,所以nginx会采用
location ~* /api/.* {
return 200 "<html><body>/api</body></html>";
}
例3:^~ /xxxx 会高于正则匹配
例3:用户请求URL为 /api/font/doc/info
配置如下
location ^~ /api {
return 200 "<html><body>^~ /api </body></html>";
}
location ^~ /api/front {
return 200 "<html><body>^~ /api/front </body></html>";
}
location ^~ /api/front/doc {
return 200 "<html><body>^~ /api/front/doc</body></html>";
}
location ~* /api/.* {
return 200 "<html><body>/api</body></html>";
}
这里Nginx会采用 location ^~ /api/front/doc 因为 ^~ 的匹配符会比正则的匹配优先级高
猜你喜欢
- 2025-06-15 linux/unix下如何统计文件行数(linux如何快速统计文件个数)
- 2025-06-15 Linux的常用Shell命令新手入门:文件查看2
- 2025-06-15 Linux统计当前文件夹下文件数量(linux统计文件总数)
- 2025-06-15 linux中find命令根据文件名字来查找
- 2025-06-15 Ubuntu16.04搭建VNC Server远程桌面服务器
- 2025-06-15 Grafana数据可视化平台基本概念介绍及快速部署应用
- 2025-06-15 QT桌面客户端在Linux下的开发流程
- 2025-06-15 node-red,一个可视化的数据流程编辑软件
- 2025-06-15 青龙面板可视化安装、配置教程(青龙面板从零搭建教程)
- 2025-06-15 从0到1:用 Linux 构建一个轻量级边缘节点监控系统
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)