LogoLogo
github
  • 💪Upupup
  • React
    • hook
    • redux
    • Router
    • umimax+nest.js 实现 权限管理系统
    • umimax + Nest.js 实现权限管理系统
  • Vue
    • effectScope 是干啥的
    • Object.assign()
    • 响应式理解
    • @babel/preset-env 问题
    • 自定义指令
    • 问题及解决
    • 🧐权限管理(动态路由)
  • docker
    • Docker 常用命令
    • Docker部署遇到的问题
    • Docker Compose 常用命令
    • docker修改daemon.json
    • jenkins
    • Jenkinsfile 语法进阶
    • nginx配置
    • 问题
    • 玩转Nginx:轻松为Docker部署的服务添加域名的完美指南
    • Docker部署前后端项目:经验分享与问题解决
  • git
    • command
    • problem
    • rebase实践
  • 前端开发面试题集
    • CSS 面试题
    • 前端工程化面试题
    • HTML 面试题
    • JavaScript 面试题
    • NestJS 面试题
    • Node.js 面试题
    • 性能优化面试题
    • React 面试题
    • 安全面试题
    • Vue 面试题
  • interviewer
    • 计算机网络
    • 性能优化
  • leetcode
    • 算法
      • 分治算法
      • 滑动窗口与双指针
        • 🦸定长滑动窗口
        • 🚴不定长滑动窗口
        • 🚴‍♂️单序列双指针
      • 回溯
      • 二分法
  • nestjs
    • mail
    • mini-order
    • nestjs
    • prisma
    • 登录注册
  • nextjs
    • 用 V0 和 Cursor 实现全栈开发:从小白到高手的蜕变
  • tauri
    • 思路
    • 自动通知应用升级
  • vite
    • vite实现原理
  • webpack
    • 资料
  • 工具
    • Eslint
    • jenkins
    • 关于cicd
  • 微信小程序
    • ScoreDeck
    • h5跳转小程序问题
  • 思路
    • carTool
  • 操作系统学习
    • Linux命令
    • 计算机是如何计数的
    • nginx
      • location
      • try_files
  • 浏览器
    • session、location
    • web crypto
    • 性能监控和错误收集与上报
    • 预请求
  • 知识点整理
    • 知识点整理
  • 面试
    • Promise
    • 备战
    • 数码3
    • 腾娱
    • 腾讯云智
    • 重复请求合并
  • 前端工程化
    • 在 pnpm Monorepo 中使用公共方法包
由 GitBook 提供支持
在本页

这有帮助吗?

在GitHub上编辑
  1. 操作系统学习
  2. nginx

location

在Nginx中,location指令用于匹配请求的URI以决定请求应该如何处理。匹配规则有以下几种:

  1. 精确匹配 (=): 当location后面跟着等号和路径时,只有完全匹配这个路径的请求才会被这个规则处理。

    location = /exact/path {
        # 只有请求为 /exact/path 时才匹配
    }
  2. 最长非正则匹配 (^~): 当location使用^~修饰符时,Nginx会匹配最长的非正则表达式路径。如果找到匹配,Nginx将停止搜索其他location。

    location ^~ /longest/non/regex/path {
        # 匹配以 /longest/non/regex/path 开头的请求
    }
  3. 正则表达式匹配 (~ 和 ~*): 使用~进行区分大小写的正则表达式匹配,使用~*进行不区分大小写的匹配。正则表达式匹配按它们在配置文件中出现的顺序进行。

    location ~* \.(gif|jpg|png)$ {
        # 匹配所有以 .gif, .jpg, .png 结尾的请求
    }
  4. 无修饰符前缀匹配: 如果location没有任何修饰符,Nginx会匹配请求URI的前缀。

    location /prefix {
        # 匹配以 /prefix 开头的请求
    }

Nginx在处理请求时,会按照以下顺序检查location指令:

  • 首先查找精确匹配(=)。

  • 如果没有找到精确匹配,接着查找最长非正则匹配(^~)。

  • 如果没有找到最长非正则匹配,再按定义顺序查找正则表达式匹配(~ 或 ~*)。

  • 如果以上都没有匹配,最后使用无修饰符前缀匹配。

上一页nginx下一页try_files

最后更新于5个月前

这有帮助吗?

。🌐

这些规则确保了Nginx可以灵活地处理各种不同的请求路径
1
2