nginx

Nginx设置expires缓存提升网站负载

2016-04-18  本文已影响292人  杍劼

一、缓存作用:

对于网站的图片,尤其是新闻站, 图片一旦发布, 改动的可能是非常小的.我们希望 能否在用户访问一次后, 图片缓存在用户的浏览器端,且时间比较长的缓存,可以使用nginx的expires设置。

二、Nginx配置:

在location或if段里来写,格式如下:

expires 30s/30m/2h/30d;(30秒/30分钟/2小时/30天)

设置完可以看到Http响应中多了Expires参数:Expires:Fri, 13 May 2016 06:48:00 GMT

注意:服务器的日期要准确,如果服务器的日期落后于实际日期,可能导致缓存失效

另:304 也是一种很好的缓存手段

原理是:

1.服务器响应文件内容是,同时响应ETag标签(内容的签名:内容一变这个值则改变),和 last_modified_since 2个标签值

2.浏览器下次请求时,头信息发送这两个标签,服务器检测文件有没有发生变化,如无,直接头信息返回 etag,last_modified_since

3.浏览器知道内容无改变,于是直接调用本地缓存

对于变化周期较短的,如静态html、js、css,比较适于用这个方式

实例:

location ~ \.(gif|jpg|jpeg|png|bmp|ico)$ {

    expires 30d;

}

上一篇下一篇

猜你喜欢

热点阅读