NGINX下配置header CACHE-CONTROL max-age

HTTP协议的header Cache -Control指定请求和响应遵循的缓存机制。

在请求消息或响应消息中设置 Cache-Control并不会影响另一个消息处理过程中的缓存处理过程。

请求时的缓存指令包括no-cache、no-store、max-age、 max-stale、min-fresh、only-if-cached等。

响应消息中的指令包括public、private、no-cache、no- store、no-transform、must-revalidate、proxy-revalidate、max-age。



Nginx的ngx_http_headers_module模块可以对Cache-Control头相关的东西进行配置

例如:

1    # 相关页面设置Cache-Control头信息,dns及cdn目录配置10天

2     

3    if ($request_uri ~* “^/$|^/dns/.+/|^/cdn/.+/”) {

4      add_header    Cache-Control  max-age=864000;

5    }

6     

7    if ($request_uri ~* “^/linux/|^/t/”) {

8      add_header    Cache-Control  max-age=86400;

9    }



max-age意思是:客户端本地的缓存,在配置的生存时间内的,客户端可以直接使用,超出生存时间的,需要到服务器上取新数据。当然这些还要看客户端浏览器的设置。