没有合适的资源?快使用搜索试试~ 我知道了~
首页nginx配置location时容易出现的误区
资源详情
资源评论
资源推荐

关于一些对 location 认识的误区
1.location 的匹配顺序是“先匹配正则,再匹配普通”。
location 的匹配顺序其实是“先匹配普通,再匹配正则”。造成误解的原因是:正则匹配
会覆盖普通匹配
2.location 的执行逻辑跟 location 的编辑顺序无关
a. “普通 location”的匹配规则是“最大前缀”,因此“普通 location”的确与编辑顺序
无关;
但是“正则 location”的匹配规则是“顺序匹配”,且只要匹配到第一个就停止后面的匹配。
b.“普通 location”与“正则Alocation”之间的匹配顺序是,先匹配普通Alocation
,再“考虑”匹配正则Alocation。
注意这里的“考虑”是“可能”的意思,也就是说匹配完“普通Alocation”后,有的时候需要继续
匹配“正则Alocation”,有的时
候则不需要继续匹配“正则Alocation”。
两种情况下不需要继续匹配正则 location:
(1)当普通 location 的前面指定了“^~”,特别告诉 nginx 本条普通 location 一旦
匹配上,则不需要继续匹配。
(2)当普通 location 恰好严格匹配上,不是最大前缀匹配,则不再继续匹配正则
总结:AA“正则Alocation 匹配让步普通Alocation 的严格精确匹配结果;但覆盖普通A
location 的最大前缀匹配结果”
3.location 的语法
location [ = | ~ | ~* | ^~ | @ ] /uri/ {...} # /uri/表示目
录,/uri 表示名为 uri 的普通文件.配置时需要注意结尾的'/'
不同前缀A“A= ”,“A~* ”,“A^~ ”,“A@ ” 和A不带任何前缀,表达的含义不同


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0