nginx缓存过期

1 原理

在默认下,请求过的内容会接受304,而从本地缓存调用。这是通过client向server发送请求,给出ETag,server确认ETag未变,则不返回内容,client调用本地缓存。

而expires设置,client没有向server发送请求,直接调用未过期的缓存资源。

对于一些静态资源,比如图片,服务器上很少更新,就可以设置在client上缓存起来,浏览器请求的时候,只要过期时间没到,就使用本地缓存,以减少服务器带宽压力。

如果设置了expires,在client的资源请求上,会有以下标明。

 

2 配置

针对一个server,图片设置过期30d,js|css是1h。

server {

    listen       80;
    server_name  www.aishop.com aishop.com;
    root         /data/aishop.com/;
    #charset koi8-r;
    access_log  logs/aishop.com.log  main;
    index  index.html;

    location ~* ^/(js|css) {
    expires 1h;
    }

    location ~* \.(jpg|jgep|png|gif)$ {
    expires 30h;
    }

}

  

 

posted @ 2018-07-02 10:40  jabbok  阅读(359)  评论(0编辑  收藏  举报