14 nginx 中配置 expires缓存提升网站负载
一:nginx 中配置 expires缓存提升网站负载
对于网站的图片,尤其是新闻站, 图片一旦发布, 改动的可能是非常小的.我们希望 能否在用户访问一次后, 图片缓存在用户的浏览器端,且时间比较长的缓存. 可以, 用到 nginx的expires设置 . nginx中设置过期时间,非常简单, 在location或if段里,来写. 格式 expires 30s; expires 30m; expires 2h; expires 30d; (注意:服务器的日期要准确,如果服务器的日期落后于实际日期,可能导致缓存失效) 另: 304 也是一种很好的缓存手段 原理是: 服务器响应文件内容是,同时响应etag标签(内容的签名,内容一变,他也变), 和 last_modified_since 2个标签值 浏览器下次去请求时,头信息发送这两个标签, 服务器检测文件有没有发生变化,如无,直接头信息返回 etag,last_modified_since 浏览器知道内容无改变,于是直接调用本地缓存. 这个过程,也请求了服务器,但是传着的内容极少. 对于变化周期较短的,如静态html,js,css,比较适于用这个方式
-----------------------
在nginx.conf中配置如下:
server{
#只对图片进行缓存
location ~* \.(jpg|gif|png|jpeg){
#设置缓存为一天
expires 1d;
}
}
----------------------