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/

相关推荐
坚持就完事了8 小时前
Linux的which命令
linux·运维·服务器
和小潘一起学AI8 小时前
centOS安装neo4j
linux·运维·服务器
HealthScience8 小时前
H20服务器多卡运行有错误gpu_partition ,tmux错误
linux·运维·服务器
RisunJan8 小时前
Linux命令-netstat(查看Linux中网络系统状态信息)
linux·运维·服务器
SPC的存折8 小时前
1、MySQL数据库基础
linux·运维·数据库·mysql
无忧.芙桃9 小时前
进程之环境变量
linux·运维·服务器
chxii9 小时前
linux 下用 acme.sh 搞定 Nginx 免费 SSL 证书自动续期(上)
nginx
chxii9 小时前
linux 下用 acme.sh 搞定 Nginx 免费 SSL 证书自动续期(下) 对于acme.sh命令安装详解
linux·运维·服务器
大阿明9 小时前
使用vite打包并部署vue项目到nginx
前端·vue.js·nginx
Bert.Cai9 小时前
Linux more命令详解
linux·运维