1. 浏览器缓存:
    • 加速用户访问,提升单个用户(浏览器访问者)体验,缓存在本地
  2. Nginx缓存
    • 缓存在nginx端,提升所有访问到nginx这一端的用户
    • 提升访问上游(upstream)服务器的速度
    • 用户访问仍然会产生请求流量
  • 控制浏览器缓存:
    1. location /files {
    2. alias /home/imooc;
    3. # expires 10s; 缓存时间
    4. # expires @22h30m; 每天的这个时间刷新
    5. # expires -1h; 负数表示 已经过期
    6. # expires epoch; epoch 表示 no cache 不设置
    7. # expires off; off 表示使用浏览器默认
    8. expires max; max 表示永不过期
    9. }

    Nginx的反向代理缓存

    1. # proxy_cache_path 设置缓存目录
    2. # keys_zone 设置共享内存以及占用空间大小
    3. # max_size 设置缓存大小
    4. # inactive 超过此时间则被清理
    5. # use_temp_path 临时目录,使用后会影响nginx性能
    6. proxy_cache_path /usr/local/nginx/upstream_cache keys_zone=mycache:5m max_size=1g inactive=1m use_temp_path=off;
    1. location / {
    2. proxy_pass http://tomcats;
    3. # 启用缓存,和keys_zone一致
    4. proxy_cache mycache;
    5. # 针对200和304状态码缓存时间为8小时
    6. proxy_cache_valid 200 304 8h;
    7. }