设置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";
}
相关推荐
迷茫运维路4 分钟前
Jenkins声明式Pipeline流水线语法示例
运维·pipeline·jenkins·声明式
Zfox_21 分钟前
【Linux】进程信号全攻略(二)
linux·运维·c语言·c++
安於宿命26 分钟前
【Linux】简易版shell
linux·运维·服务器
追梦不止~33 分钟前
Docker常用命令+详解
运维·docker·容器
黑龙江亿林等保36 分钟前
深入探索哈尔滨二级等保下的负载均衡SLB及其核心算法
运维·算法·负载均衡
黄小耶@37 分钟前
linux常见命令
linux·运维·服务器
叫我龙翔38 分钟前
【计网】实现reactor反应堆模型 --- 框架搭建
linux·运维·网络
古驿幽情41 分钟前
CentOS AppStream 8 手动更新 yum源
linux·运维·centos·yum
BillKu41 分钟前
Linux(CentOS)安装 Nginx
linux·运维·nginx·centos
BillKu1 小时前
Linux(CentOS)yum update -y 事故
linux·运维·centos