首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >nginx优先于外部位置块的嵌套位置

nginx优先于外部位置块的嵌套位置
EN

Server Fault用户
提问于 2014-10-12 15:03:42
回答 1查看 5.9K关注 0票数 1

有人能解释一下为什么这不像人们所期望的那样有效吗?在下面的nginx配置中,假设第一个nginx将与正则匹配的图像扩展块一起使用,然后它才会进入^~优先于其他所有内容的内部块。

看起来nginx不管范围如何,都在考虑更大的问题,并在外部regex扩展块之前匹配^~ /images,以获得像/images/something.png这样的请求?

代码语言:javascript
复制
location ~* \.(css|js|jpg|png|gif|ico)$ {
    expires 7d;
    add_header Image-By-Extension 1;
}

location / {
    location ^~ /images {
        add_header Image-By-Folder 1;
        ...
    }
}
EN

回答 1

Server Fault用户

回答已采纳

发布于 2014-10-12 15:44:43

是的,nginx必须选择一个位置,所以即使您要嵌套这些位置,也不会在以后报告匹配情况。当您使用~^运算符时,您告诉nginx避免查看regex位置块,如果它是与当前请求URI匹配的最长前缀位置块。

我在这里解释了整个过程:Nginx rewite规则403错误

票数 5
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/636431

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档