服务器之家

服务器之家 > 正文

讲解Nginx服务器中设置本地浏览器缓存的简单方法

时间:2019-11-05 12:00     来源/作者:jevien

浏览器缓存(Browser Caching) 是为了加速浏览并节约网络资源,浏览器在用户磁盘上对最近请求过的文档进行存储。
nginx可以通过 expires 指令来设置浏览器的Header
语法: expires [time|epoch|max|off]
默认值: expires off
作用域: http, server, location
使用本指令可以控制HTTP应答中的“Expires”和“Cache-Control”的头标,(起到控制页面缓存的作用)。
可以在time值中使用正数或负数。“Expires”头标的值将通过当前系统时间加上您设定的 time 值来获得。
epoch 指定“Expires”的值为 1 January, 1970, 00:00:01 GMT。
max 指定“Expires”的值为 31 December 2037 23:59:59 GMT,“Cache-Control”的值为10年。
-1 指定“Expires”的值为 服务器当前时间 -1s,即永远过期

例子:
图片缓存30天

?
1
2
3
4
location ~.*\.(jpg|png|jpeg)$
 {
 expires 30d;
 }

js css缓存一小时

?
1
2
3
4
location ~.*\.(js|css)?$
 {
 expires 1h;
 }

浏览器缓存的头信息,在nginx里也是可以设置的,如下。

?
1
2
3
4
5
6
7
8
#配置在server节点下
 #将favicon.ico放到nginx安装目录的html目录下
location = /favicon.ico {
  root html;
  index index.html index.htm;
  expires 30d; #会同时设置Expires 和 Cache-Control:max-age
  add_header Pragma Pragma;
 }

设置完以后,请求通过浏览器查看。
增加了

?
1
2
Cache-Control:max-age=2592000
Expires:Sun, 08 Nov 2015 01:07:48 GMT

缓存生效。

注意事项
调试的时候要注意几个问题:
四类用户行为影响缓存:F5刷新,F5强制刷新,点击刷新,地址栏回车。会让Expires失效。

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
返回顶部