设置Nginx缓存策略

详细信息

Nginx服务器的缓存策略设置方法有两种:add_header或者expires。

1. add_header

1)语法:add_header name value。

2)默认值:none。

3)使用范围:http、server、location。

配置示例如下:

  • add_header cache-control "max-age=86400";#设置缓存时间为1天。
  • add_header cache-control "no-cache"; #设置为不缓存。
  • add_header cache-control "max-age=60"; #设置缓存时间为1分钟。

2. expires

1)语法:expires [time|epoch|max|off]

2)默认值:expires off

3)使用范围:http、server、location

4)这个指令控制是否在应答中标记一个过期时间,标记说明如下:

  • off:将禁止修改头部中的Expires和Cache-Control字段。
  • time:控制Cache-Control的值,负数标识永远过期,并且响应cache-control: no-cache。
  • epoch:将Expires头设置为1 January, 1970 00:00:01 GMT。
  • max:将Expires头设置为31 December 2037 23:59:59 GMT,将Cache-Control最大化到10年。

配置示例如下:

  • expires -1; #expires响应头内容为当前服务器时间过去1秒的时间,同时响应cache-control: no-cache。
  • expires 1d; #expires响应头内容为当前服务器时间未来1天的时间,同时响应cache-control: 86400。
  • expires 1h; #expires响应头内容为当前服务器时间未来1小时的时间,同时响应cache-control: 3600。

配置示例

  • 设置PHP文件类型过期时间为1小时:

    location ~ .php$ {
    expires 1h;
    }

设置PHP文件类型为no-cache,不允许缓存:

复制代码
location ~ \.php$ {
 add_header Cache-Control "no-cache";
}
相关推荐
ZKNOW甄知科技10 分钟前
重构企业运维智慧:低代码 ITSM 知识管理平台的创新与实践
大数据·运维·人工智能·程序人生·低代码·重构·it
席万里14 分钟前
通过Golang订阅binlog实现轻量级的增量日志解析,并解决缓存不一致的开源库cacheflow
缓存·golang·开源
HalvmånEver22 分钟前
Linux:基础开发工具(三)
linux·运维·服务器·开发语言·学习·gcc/g++
百***34131 小时前
Nginx实现接口复制
运维·nginx·junit
wanhengidc1 小时前
巨 椰 云手机稳定挂机 搬砖
运维·服务器·游戏·智能手机·云计算
linuxxx1101 小时前
Django 缓存详解与应用方法
python·缓存·django
kyle~2 小时前
C++20--- concept 关键字 为模板参数提供了编译期可验证的约束机制
运维·c++
熊文豪2 小时前
Docker 缓存优化:通过 cpolar 内网穿透服务远程管理 Redis
redis·缓存·docker·cpolar
序属秋秋秋2 小时前
《Linux系统编程之进程基础》【进程入门】
linux·运维·c语言·c++·进程·系统编程·fork
晨非辰3 小时前
【数据结构】排序详解:从快速排序分区逻辑,到携手冒泡排序的算法效率深度评测
运维·数据结构·c++·人工智能·后端·深度学习·排序算法