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

浏览器缓存(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失效。
声明: 猿站网有关资源均来自网络搜集与网友提供,任何涉及商业盈利目的的均不得使用,否则产生的一切后果将由您自己承担! 本平台资源仅供个人学习交流、测试使用 所有内容请在下载后24小时内删除,制止非法恶意传播,不对任何下载或转载者造成的危害负任何法律责任!也请大家支持、购置正版! 。本站一律禁止以任何方式发布或转载任何违法的相关信息访客发现请向站长举报,会员发帖仅代表会员个人观点,并不代表本站赞同其观点和对其真实性负责。本网站的资源部分来源于网络,如有侵权烦请发送邮件至:2697268773@qq.com进行处理。
建站知识

小知识:关于linux服务器下vsftpd的一些问题

2023-5-3 2:36:24

建站知识

小知识:Linux下的Memcache安装方法

2023-5-3 2:44:38

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索