IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 强缓存和协商缓存 -> 正文阅读

[网络协议]强缓存和协商缓存

Nginx配置浏览器缓存

强缓存

说明:当浏览器向服务器获取请求结果后,将请求结果在本地浏览器内缓存,之后的请求都先反问缓存内的结果,返回200

在Response Headers中设置cache-control、expires,两种方式都设置,以cache-control为主

cache-control,用来控制缓存方式
cache-control: max-age=6000    设置缓存存储的最大周期,超过这个时间缓存被认为过期
cache-control: no-store 不缓存  
cache-control: no-cache 不使用强缓存,使用协商缓存
expires,响应头包含日期/时间,即在此时之后,响应过期
expires: Mon,15 Sep 2020 09:20:20 GMT	

协商缓存

说明:当浏览器向服务器获取请求结果后,将请求结果在本地浏览器内缓存,之后向服务器发送请求,如果服务器内容没有发生变化,返回304,在从浏览器缓存中获取内容,如果发生变化,获取新的数据,返回200,再更新缓存,

	response: last-modified: Mon,15 Sep 2020 09:20:20 GMT
	request: if-modified-since: Mon,15 Sep 2020 09:20:20 GMT
	response: etag: "619df7f3-554ca"
	request: if-none-match: "619df7f3-554ca"

last-modified,包含源头服务器认定的资源做出修改的日期及时间
if-modified-since,服务器只在所请求的资源给定日期时间之后对内容进行过修改的情况下,才会将资源返回,状态码200,如果请求的资源从那时未经过修改,返回304,只能用在get、head请求
etag,是http响应头资源标识符,如果请求内容没有发生修改,web服务器不需要发送完整的响应,如果发生了修改,就会更新这个标识
if-none-match,将请求的etag的值做为参数传递给服务器,与服务器的etag进行对比,如果两者相同,标识没有发生修改,web服务器不需要发送完整的响应,如果不相同,标识请求内容修改过,获取新的内容

Ngnix配置缓存方法

浏览器默认对静态文件使用强缓存

server {
	// 协商缓存
	location ~* \.(html)$ {
		access_log off;
		add_header Cache-Control max-age=no-cache;
	}
	// 强缓存
	location ~* \.(css|js|png|jpg|jpeg|git|gz|svg|mp4|ogg|ogv|webm|htc|xml|woff)$ {
		access_log off;
		add_header Cache-Control max-age=36000;
	}
}
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-26 09:12:22  更:2021-11-26 09:14:41 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:31:31-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码