免责声明:本文档可能包含第三方产品信息,该信息仅供参考。阿里云对第三方产品的性能、可靠性以及操作可能带来的潜在影响,不做任何暗示或其他形式的承诺。

概述

本文主要介绍Nginx服务器的缓存策略配置方法。


详细信息

HTTP头处理模块

允许设置任意的HTTP头介绍如下。

add_header

  • 语法:add_header name value
  • 默认值:none
  • 使用字段:http、server、location。
 

expires

  • 语法:expires [time|epoch|max|off]
  • 默认值:expires off
  • 使用字段:http、server、location。
  • 这个指令控制是否在应答中标记一个过期时间,标记说明如下。
    • off将禁止修改头部中的Expires和Cache-Control字段。
    • Time控制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 年。
 

Nginx缓存设置

配置示例如下。
  • 设置php的文件类型过期时间设置为1个小时。

  • 设置php的文件类型为no-cache,不让cache服务器缓存。

  • 参考如下配置内容,可以通过add_header设置相对应的缓存策略,对于动态的php文件设置为不缓存。
    location ~ .*\.php$ {
    if ($request_uri !~ ^/dynamicimg/) {
    add_header Cache-Control "no-cache";
    add_header Pragma no-cache;
       }
    }

 

适用于

  • CDN