参考资料

  1. Nginx 基于SSL的TCP代理服务器详细说明以及案例
  2. nginx -p详细说明以及案例
  3. CGI(Common Gateway Interface,通用网关接口)详细说明以及案例
  4. Nginx HTTP代理服务器详细说明以及案例
  5. 如何防止SQL注入和XSS攻击?
  6. Nginx配置文件详细说明以及案例
  7. Nginx伪流媒体服务器搭建详细说明以及案例
  8. NginxPHP服务器环境搭建详细说明以及案例

Cache-Control头设置max-age和immutable属性

  1. max-age

    • 用法: Cache-Control: max-age=<seconds>

    • 解析: 指定资源在缓存中的最大存储时间(秒)。在此期间内,浏览器直接从缓存加载资源,不发送请求到服务器。

    • 示例: Cache-Control: max-age=3600(缓存1小时)。

  2. immutable

    • 用法: Cache-Control: immutable

    • 解析: 声明资源在有效期内(如max-age内)不会改变。浏览器即使刷新页面也不会重新验证,直接使用缓存。

    • 适用场景: 静态且内容永不变化的资源(如文件哈希命名的资源)。

    • 示例: Cache-Control: max-age=31536000, immutable(缓存1年且不可变)。

  3. no-transform

    • 用法: Cache-Control: no-transform

    • 解析: 禁止中间代理(如CDN、运营商)对资源进行修改,例如压缩图片、转码视频等。

    • 适用场景: 需保持原始格式的资源(如严格校验的文件)。

    • 示例: Cache-Control: no-transform

组合示例:
Cache-Control: max-age=604800, immutable, no-transform  

  • 缓存7天,期间不重新验证,且禁止代理修改资源。