设置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 分钟前
开源软件日志统一管理方案-Filebeat
运维·jenkins
飞Link23 分钟前
【Anaconda】Linux(CentOS7)下安装Anaconda教程
linux·运维·python
Ama_tor32 分钟前
docker|F盘安装の1键部署软件及数据储存+2个保姆级运行实例
运维·docker·容器
@时间旅行者@36 分钟前
LINUX离线安装postgres,rpm方式安装
linux·运维·服务器·postgresql·离线安装
whlqjn_121140 分钟前
Ubuntu 20.04图形界面卸载
linux·运维·ubuntu
杨云龙UP40 分钟前
SQL Server 2016通过SSMS(SQL Server Management Studio)图形界面完成创建用户和授权_20251230
运维·服务器·数据库
斯普信云原生组1 小时前
Linux 平台 Redis Insight 安装卸载与常见问题
linux·运维·redis
qq_416276421 小时前
linux bashrc写各种离线库路径并验证
linux·运维·服务器
航Hang*1 小时前
第二章:网络系统建设与运维(中级)——华为设备基本命令
运维·计算机网络·华为·ensp·交换机
专注VB编程开发20年1 小时前
VB6 UIAutomation 自动化查找元素
运维·自动化·uiautomation·uia