nginx location的执行规则和root/alias的区分

nginx location的执行规则和root/alias的区分

总结

看本篇文章不是教如何从0编写nginx配置,而是看懂已存在的nginx配置。

官方文档定义:location = \| \~ \| \~\* \| \^\~ uri { ... }

  • =:严格匹配,且匹配成功则不继续往下,优先级第一

  • ^~:前缀匹配,匹配到后不继续往下,优先级第二

  • ~:正则表达式,并且区分大小写,优先级次之

  • 不带任何修饰的前缀匹配,优先级最后

这里面用的最多的是第4种普通匹配,然后2和3也会用上,1很少用,这时就要清晰意识到优先级的问题了,往往正则和普通的前缀匹配容易写重了,就会报rewrite的错误

root/alias的区分就是前者是 替换的目录/匹配的目录,后者则直接是替换的目录=匹配的目录。这里注意当alias替换匹配到的目录的时候,如果是ip:port登录的,则可能会丢失port,此时在alias下方需要增加 proxy_pass http://ip:port/

相关推荐
大模型丫丫4 分钟前
Hermes Agent:轻量级智能体框架实战指南
大数据·运维·服务器
考虑考虑32 分钟前
kubectl命令
运维·后端·自动化运维
NJCloud36 分钟前
Docker 容器技术入门:部署、核心概念与基础命令
运维·docker·容器
2601_962072331 小时前
docker自建rustdesk-server远程桌面
运维·docker·容器
Blockchina1 小时前
Codex 实战:从一句需求到可验收的 Linux 主机巡检脚本
运维·服务器·网络
2601_962218471 小时前
万象生鲜系统冷链物联网接入技术实现生鲜企业温控管理数字化
大数据·运维·微服务·云原生·架构
Best-Wishes2 小时前
BurpSuite Pro教育版在linux系统中配置
linux·运维·服务器·网络安全·burpsuite
志栋智能2 小时前
从关联到因果:智能超自动化如何实现真正的根因分析定界
运维·自动化
虎王物联2 小时前
RK3568嵌入式Linux跑Docker:内核配置排查到AIoT容器化的完整路径
linux·运维·docker·rk3568·aiot·嵌入式linux
从入门到退休4 小时前
企业远程控制选型:向日葵SDK vs RustDesk自建,谁是更务实的选择?
运维·服务器·网络·远程工作·远程控制