Nginx作为静态web服务器——缓存原理
2024-08-23 13:52:40
浏览器缓存
客户端无缓存的情况下
客户端有缓存的情况下
校验过期机制
本地客户端会检查Cache-Control(max-age)缓存是否过期,(max-age)为过期时间
Last-Modified
上次修改时间
配合If-Modified-Since或者If-Unmodified-Since使用
对比上次修改时间验证资源是否需要更新
ETag
数据签名
典型做法:对资源内容进行hash计算
配合If-Match或者Id-Non-Match使用
对比资源的签名判断是否使用缓存
请求原理
配置语法-expires
添加Cache-Control、Expires头
Syntax:expires [modified] time;
expires epoch |max|off;
Default:expires off;
Context:http,server,location,if in location
Cache-Control:max-age=0表示每次请求都跟服务器校验Last-Modified
配置语法-expires演示
将配置语法加进去
location ~ .*\.(htm|html) {
expires 24h; # 24小时查看一次是否更新
root /opt/app/code;
}
检查语法后,重启nginx,访问地址http://192.168.96.188/test_expires.html
这时候头部信息Cache-Control:max-age=86400表示86400秒跟服务器校验Last-Modified
最新文章
- 干货!表达式树解析";框架";(1)
- MFC listcontrol导出excel表格
- Socket,TCP/IP,UDP,HTTP,FTP
- SQL Server 2005 数据库复制(转载)
- Centos编译安装PHP 5.5笔记
- MVC+EF+Spring.Net代码生成器
- ArcMap 查询取位SQL
- Vim配置IDE开发环境
- Hibernate详细教程
- GPU编程--宏观理解篇(1)
- 如何在C#中使用存储过程(SQL Server 2000)
- $HNOI\ 2010$ 解题报告
- curl命令备注
- js 倒计时跳转
- EF Code First关系规则及配置
- 老代码多=过度耦合=if else?阿里巴巴工程师这样捋直老代码
- Mybatis根据List批量查询List结果
- [iOS]改变UIAlertController的标题、内容的字体和颜色
- Jenkins ChangeLog
- 什么是pytorch(3神经网络)(翻译)
热门文章
- Github开源人脸识别项目face_recognition
- BAT 脚本判断当前系统是 x86 还是 x64 系统
- H3C 链路聚合分类
- 【16.50%】【CF 44G】Shooting Gallery
- location对象相关
- Keras lstm 文本分类示例
- 《疯狂Java讲义第4版》PDF+代码+课件 电子书pdf 分享
- The third day of Crawler learning
- ELK学习实验007:Nginx的日志分析系统之Metribeat配置
- 【一起学源码-微服务】Nexflix Eureka 源码十一:EurekaServer自我保护机制竟然有这么多Bug?