web缓存:
1.可以自动保存常见文档副本的HTTP设备,当web请求抵达缓存时,如果存在缓存副本,就直接从本地存储设备返回,而不是去源服务器获取 2.缓存命中和未命中 3.HTTP再验证,检测服务器上的内容是否发生了变化,新鲜度检测规则。缓存对副本进行再验证时,会向服务器发送一个小的再验证请求,如果没变化,服务器会返回304 Not Modified,get请求中添加if-modified-since会进行再验证 4.缓存命中率:由缓存提供服务的占比,命中率与缓存大小,用户兴趣相似点,数据的变化,缓存配置等有关,40%的命中率是合理的,对降低整体时延很有好处 5.字节命中率:缓存提供的字节流量在传输流量中的占比,对节省带宽很有利 6.私有缓存,比如web浏览器 7.共有代理缓存,实现层次化的多级缓存很有意义 8.网状缓存,内容路由,对等缓存;有些不是简单的层次结构而是构建复杂的网状关系缓存,这些代理缓存也可以称为内容路由器,ICP和HTCP协议扩展了HTTP的对等缓存兄弟缓存 9.缓存处理步骤:接收请求=>解析请求=>查询本地副本(获取源服务器)=>新鲜度检测=>创建响应=>发送响应=>记录日志 10.文档过期:服务器返回头信息Cache-Control 和Expires,为文档附加过期时间。Cache-Control:max-age=484200是相对时间,保存的秒数,用的更多一些 11.服务器再验证:If开头的条件方法头信息进行再验证
If-Modified-Since:日期
If-None-Match:实体标签再验证 12.
打开新窗口 如果指定cache-control的值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如:Cache-control: max-age=5 表示当访问此网页后的5秒内再次访问不会去服务器.
在地址栏回车 如果值为private或must-revalidate,则只有第一次访问时会访问服务器,以后就不再访问。如果值为no-cache,那么每次都会访问。如果值为max-age,则在过期之前不会重复访问。
按后退按扭 如果值为private、must-revalidate、max-age,则不会重访问,而如果为no-cache,则每次都重复访问.
按刷新按扭 无论为何值,都会重复访问.
Cache-Control:no-cache就表示不缓存
13.
apache的配置:
3.注释掉apache配置文件中的:
#ExpiresDefault A0
#Header set Cache-Control "private, must-revalidate, max-age=0, proxy-revalidate, no-transform"
#Header set Pragma "no-cache" ExpiresActive On
ExpiresDefault "access plus 300 seconds" 14.php文件中的响应头:
header('Cache-Control: max-age=' . $this->expires);
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + $this->expires) . ' GMT');
header('Pragma: '); // unset Pragma header

[日常] HTTP的缓存的更多相关文章

  1. nginx介绍(二) 架构篇

    2. nginx架构总览 传统的基于进程或者基于线程的模型处理并发的方式都是为每个连接单独创建一个处理进程或线程,会在网络传输或者I/O操作上阻塞.而这对应用来说,在内存和 CPU的使用上效率都是非常 ...

  2. MacBookPro 存储空间优化

    首先,打开电脑内的"终端"; 其次,逐条录入下面的命令行,执行完成后,再次查看您的储存空间,多少会有一些优化,具体会优化出多少储存空间因您日常使用而定(本人清出了5G 空间,还不错 ...

  3. [日常] Go语言圣经-并发的非阻塞缓存

    1.go test命令是一个按照约定和组织进行测试的程序2.竞争检查器 go run -race 附带一个运行期对共享变量访问工具的test,出现WARNING: DATA RACE 说明有数据竞争3 ...

  4. zabbix日常监控(监控缓存)

    实现的方法大体类似: 多谢博主的文章,免了不少时间! 摘抄博文地址:https://www.cnblogs.com/sixiweb/p/6893858.html https://www.cnblogs ...

  5. ASP.NET Core 中间件之压缩、缓存

    前言 今天给大家介绍一下在 ASP.NET Core 日常开发中用的比较多的两个中间件,它们都是出自于微软的 ASP.NET 团队,他们分别是 Microsoft.AspNetCore.Respons ...

  6. Python之路第一课Day10--随堂笔记(异步IO\数据库\队列\缓存)

    本节内容 Gevent协程 Select\Poll\Epoll异步IO与事件驱动 Python连接Mysql数据库操作 RabbitMQ队列 Redis\Memcached缓存 Paramiko SS ...

  7. Maven日常 —— 你应该知道的一二三

    以前在日常工作中,使用Maven只是机械的执行Maven clean.Maven install,对其中的原理与过程并无了解,近期阅读了<Maven实战>,对Maven有了更深入的理解. ...

  8. 2.goldengate日常维护命令(转载)

    goldengate日常维护命令 发表于 2013 年 7 月 4 日 由 Asysdba 1.查看进程状态 GGSCI (PONY) 2> info all 2.查看进程详细状态,有助于排错 ...

  9. mysql缓存、存储引擎

    一.         mysql查询缓存 查询缓存不是mysql的子系统,却是查询优化和执行子系统不可缺少的组成部分.它不仅可以缓存查询结果,还可以缓存查询结果本身.如果某个查询的结果就在缓存里, 系 ...

随机推荐

  1. Debian中配置静态IP

    默认安装Debian的时候是用dhcp服务的,有时我们需要设置一下静态IP. 一共涉及两个文件的修改 /etc/network/interfaces auto eth0#iface eth0 inet ...

  2. C#分部类型解析

    等待着元宵节的到来,过完元宵,这个年也算是过完了,也得开始出去挣钱了,过年回家感觉每个人都觉得很牛,只有自己太渣,为了避免年底再出现这样尴尬的局面,还是需要努力干活.争取当上CEO,赢取白富美,走上人 ...

  3. 第60节:Java中的JavaScript技术

    欢迎到我的简书查看我的文集 前言: JavaScript是什么呢?它是一种基于对象和事件驱动的脚本语言,主要是应用于客户端上的.JavaScript它可以做到信息的动态交互,具有交互性,它不允许直接访 ...

  4. Python开发端口扫描器

    首先是最常用的端口扫描器: 虽说有nmap等强大的工具,不过如果由于条件限制无法安装Nmap呢? 我这个脚本写的比较简单,默认扫描1-65535全部的端口 实际的话,可以根据需要自己修改脚本来实现定制 ...

  5. Spring MVC之中前端向后端传数据

    Spring MVC之中前端向后端传数据和后端向前端传数据是数据流动的两个方向, 在此先介绍前端向后端传数据的情况. 一般而言, 前端向后端传数据的场景, 大多是出现了表单的提交,form表单的内容在 ...

  6. python 安装 reportlab 报错 “ImportError: No module named reportlab.lib”

    reportlab是什么? 是一个处理PDF和画图的python开源库. 初次安装: pip install reportlab 重新安装: pip install --upgrade --force ...

  7. feh: linux终端下看图片的好工具

    1) 普通浏览 $ feh * 可以察看当前目录下的所有图片,以及当前子目录里的所有图片 2) 播放幻灯片 (-D)   $ feh -D 2 *.jpg 对所有jpg以幻灯片的方式播放,每两秒放一张 ...

  8. python(leetcode)-66加一问题

    给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字. 你可以假设除了整数 0 之外,这个整数不会以零开头. 示例 1: 输入 ...

  9. Apace、Ngnix、Tomcat三者关系

    Apache,指的应该是Apache软件基金会下的一个项目--Apache HTTP Server Project:Nginx同样也是一款开源的HTTP服务器软件(当然它也可以作为邮件代理服务器.通用 ...

  10. Redis(2)---数据持久化

    数据持久化 Redis有两种持久化的方式:快照(RDB文件)和追加式文件(AOF文件) (1)RDB持久化方式是在一个特定的间隔保存某个时间点的一个数据快照.(默认模式) (2)以日志的形式来记录每个 ...