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/

相关推荐
陈皮糖..18 分钟前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
莫白媛44 分钟前
Linux在限制敏感命令下的修改用户密码小白版
linux·运维·服务器
hhb_6182 小时前
C Shell 基础语法与高阶运维实战指南
运维·c语言·chrome
爱学习的小囧3 小时前
VMware vCenter Server 9.0.2.0 资源详解+完整部署教程+下载指南+常见问题
运维·服务器·esxi·vmware·虚拟化·esxi9.0.2.0
贾斯汀玛尔斯4 小时前
每天学一个算法--单调栈(Monotonic Stack)
运维·服务器·算法
hhb_6184 小时前
Linux底层运维自动化挂载与磁盘分区实战指南
linux·运维·自动化
SpikeKing4 小时前
Server - 配置 SQLBot 智能问数项目
运维·server·sqlbot
cui_ruicheng4 小时前
Linux库制作与使用(二):ELF文件与链接过程
linux·运维·服务器
怀旧,4 小时前
【Linux系统编程】18. Linux进程信号(上)
linux·运维·服务器
舰长1154 小时前
Windows服务器修改默认远程端口3389
运维·服务器