设置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";
}
相关推荐
陈聪.18 分钟前
HAProxy 知识整理:从负载均衡原理到实战配置
运维·负载均衡
AOwhisky2 小时前
Linux(CentOS)系统管理入门笔记(第二十一期)——防火墙管理(Firewalld)——zone、服务端口、富规则与端口转发
linux·运维·笔记·安全·centos·防火墙
腾飞开源2 小时前
01_K8s干货笔记之认识K8s
运维·笔记·云原生·容器·kubernetes·k8s·容器化部署
布鲁飞丝9 小时前
vivo Pulsar 万亿级消息处理实践()-Ansible运维部署
运维·ansible
XR1234567889 小时前
企业全光网络架构选型技术白皮书:从物理层到运维层的全链路分析
运维·网络·架构
似的8359 小时前
一步一步学习使用FireMonkey动画() 使用TAnimator类创建动画
linux·学习·nginx
HiDev_10 小时前
【非标自动化】2、认识元器件(直线模组)
运维·自动化
龙仔72511 小时前
人大金仓 KingbaseES V8 只读账号创建完整运维笔记
运维·笔记·sql·人大金仓
我不管我就要叫小猪11 小时前
嵌入式Linux----网络通信
linux·运维·服务器
江湖有缘11 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器