Nginx expires、etag、if_modified_since:客户端缓存控制详细说明以及案例
2025-03-09
6
Nginx 客户端缓存控制
1. expires
expires
指令用于设置响应头中的 Expires
和 Cache-Control
,控制客户端缓存的时间。
语法:
expires [time|epoch|max|off];
案例:
location /static/ { expires 1d; # 缓存1天 }
1d
表示缓存1天。max
表示缓存10年。off
表示禁用缓存。
2. etag
etag
指令用于启用或禁用 ETag
响应头,用于标识资源的唯一性。
语法:
etag on|off;
案例:
location /static/ { etag on; # 启用ETag }
on
表示启用ETag
。off
表示禁用ETag
。
3. if_modified_since
if_modified_since
指令用于控制 If-Modified-Since
请求头的处理方式。
语法:
if_modified_since off|exact|before;
案例:
location /static/ { if_modified_since exact; # 精确匹配修改时间 }
off
表示忽略If-Modified-Since
请求头。exact
表示精确匹配修改时间。before
表示如果修改时间早于请求头中的时间,则返回304。
综合案例
location /static/ { expires 1d; # 缓存1天 etag on; # 启用ETag if_modified_since exact; # 精确匹配修改时间 }
该配置使
/static/
目录下的资源缓存1天,启用ETag
,并精确匹配If-Modified-Since
请求头。
本篇文章内容来源于:Nginx expires、etag、if_modified_since:客户端缓存控制详细说明以及案例
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。