Nginx之expires缓存提高网站负载
引言
因为关心到过期时间,所以服务器的日期要准确,时间不准确,一切设置都是“白扯”。 ⇒ ⇒ ⇒ 修改系统时间:
date -s ‘2018-10-01 16:33:44’
clock -w # 写入配置文件
浏览器自带的304
也是一种很好的缓存手段
expires缓存的原理: ① 服务器响应文件内容是,同时响应etag标签(内容的签名,内容一变,它也变), 和 last_modified_since 2个标签值。② 浏览器下次去请求时,头信息发送这两个标签, 服务器检测文件有没有发生变化,若无,直接头信息返回 etag,last_modified_since。 ③ 浏览器知道内容无改变,于是直接调用本地缓存。
注解:这个过程,也请求了服务器,但是传着的内容极少。 对于变化周期较短的,如静态html,js,css,比较适于用这个方式。
上面介绍了浏览器的缓存,下面进入本文的正题,Nginx配置expires缓存。
Nginx之expires
缓存
expires,译为过期,使用 expires 设置多长时间后过期,而不是立即过期。
对 nginx 来说,实现的方法很简单,只要在location段中,使用 expires 就可以了,格式见下:
expires 30s; //表示把数据缓存30秒
expires 30m; //表示把数据缓存30分
expires 10h; //表示把数据缓存10小时
expires 1d; //表示把数据缓存1天
举例分析:正则匹配.(jpg|jpeg|png),过期时间设为1min后
不断刷新页面,可以看到下图中:有Expires过期时间的缓冲选项。(表示配置expires成功)
注解:这个过程,没有请求了服务器,直接从缓存中取出缓存的内容。