You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx不同嵌套块中Header指令(如Expires)的优先级规则咨询

Nginx中Header指令(如Expires)在嵌套块的优先级规则

结论:location块内的Header指令优先级高于server块,完全契合你「默认规则+特定覆盖」的需求。

以你提供的配置为例:

server {
    expires 1d;
    location /c {
        expires 2d;
    }
}
  • 未匹配/c路径的请求,将继承server块的expires 1d规则,缓存1天;
  • 匹配/c路径的请求,会使用location块内的expires 2d规则,直接覆盖server级的默认配置,缓存2天。

通用优先级逻辑

Nginx配置的指令优先级遵循「就近匹配、局部覆盖全局」的核心原则:

  • 嵌套层级越深(如http > server > location > if),指令优先级越高;
  • 同一层级下,更具体的匹配规则优先级更高,但在你的场景中,location块本身比server块层级更深,因此直接实现覆盖效果。

验证方法

可以用curl命令查看响应头验证规则:

# 测试非/c路径
curl -I http://your-domain/non-c-path
# 响应头会包含 Cache-Control: max-age=86400(对应1天)

# 测试/c路径
curl -I http://your-domain/c
# 响应头会包含 Cache-Control: max-age=172800(对应2天)

内容的提问来源于stack exchange,提问作者pruna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 06:02:33