浏览器缓存:Expires

原理:给http添加Cache-Control、Expires头

Syntax:  expires [modified] time;
		 expires epoch | max |off ;
Default: expires off;
Context: http, server, location;
  1. expires指令控制HTTP应答中的“Expires”和“Cache-Control”Header头部信息,启动控制页面缓存的作用
  2. time:可以使用正数或负数。“Expires”头标的值将通过当前系统时间加上设定time值来设定。
  3. time值还控制"Cache-Control"的值:
    • 负数表示no-cache
    • epoch:指定“Expires”的值为 1 January,1970,00:00:01 GMT
    • max:指定“Expires”的值为31 December2037 23:59:59GMT,"Cache-Control"的值为10年
    • -1:指定“Expires”的值为当前服务器时间-1s,即永远过期
    • off:不修改“Expires”和"Cache-Control"的值
location /files {
    alias /home/imooc;

    # expires 30d;
    # expires 10s; 
    # expires @22h30m;
    # expires -1;
    # expires epoch; 
    # expires off;
    expires max;
}

反向代理缓存

# proxy_cache_path 设置缓存目录
#       keys_zone 设置共享内存以及占用空间大小
#       max_size 设置缓存大小
#       inactive 超过此时间则被清理
#       use_temp_path 临时目录,使用后会影响nginx性能
proxy_cache_path /usr/local/nginx/upstream_cache keys_zone=mycache:5m max_size=1g inactive=1m use_temp_path=off;

location / {
    # 反向代理地址
    proxy_pass  http://tomcats;

    # 启用缓存,和keys_zone一致
    proxy_cache mycache;
    # 针对200和304状态码缓存时间为8小时
    proxy_cache_valid   200 304 8h;
}

Q.E.D.

知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

那一年,我也变成了光!!