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

一、缓存作用:

对于网站的图片,尤其是新闻站, 图片一旦发布, 改动的可能是非常小的.我们希望 能否在用户访问一次后, 图片缓存在用户的浏览器端,且时间比较长的缓存,可以使用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;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容