cookie expires和max-age的区别
- Expires在HTTP/1.0中已经定义,Cache-Control:max-age在HTTP/1.1中才有定义,为了向下兼容,仅使用max-age不够;
- Expires指定一个绝对的过期时间(GMT格式),这么做会导致至少2个问题:
1)客户端和服务器时间不同步导致Expires的配置出现问题;
2)很容易在配置后忘记具体的过期时间,导致过期来临出现浪涌现象; - max-age 指定的是从文档被访问后的存活时间,这个时间是个相对值(比如:3600s),相对的是文档第一次被请求时服务器记录的Request_time(请求时间)
- Expires指定的时间可以是相对文件的最后访问时间(Atime)或者修改时间(MTime),而max-age相对对的是文档的请求时间(Atime)
在Apache中,max-age是根据Expires的时间来计算出来的max-age = expires- request_time:(mod_expires.c)
429 expires = base + additional; 430 apr_table_mergen(t, "Cache-Control", 431 apr_psprintf(r->pool, "max-age=%" APR_TIME_T_FMT, 432 apr_time_sec(expires - r->request_time)));
注:如果是A,base=request_time,M的话base=finfo.mtime.
expires - request_time得到max-age,如果Expires根据的是A(也就是AccessTime)设置的(A后面的值就是addtional),那么expires设置的值就等于addtional值,但是如果Expires根据的是Mtime,那么如果M后面的参数小于最后修改时间到当前时间的差(比方说2小时前修改了文件(19:00:00),现在设置M3600(现在是21:00:00)并且访问,max-age=expires-request_time = (finfo.mtime+additional)- request_time),计算出的max-age就是负数(可以试验看到这个结果):max-age = (19:00:00+3600/3600) - 21:00:00 = -3600s
这样,在Apache中,max-age就不仅仅是相对Atime的时间了,如果设置为M,相对的是Mtime。
cookie expires和max-age的区别相关推荐
- cookie的max age
max age=0 命令浏览器立即删除该cookie max age 设置为负值的话,命令浏览器保存该cookie,关闭浏览器就失效.
- Cookie和Session的作用,区别和各自的应用范围,Session工作原理
Cookie和Session的作用与区别 Session用于保存每个用户的专用信息. 每个客户端用户访问时,服务器都为每个用户分配一个唯一的会话ID(Session ID) . 她的生存期是用户持续请 ...
- 一文读懂cookie、sessionStorage和localStorage的区别
cookie.sessionStorage和localStorage的区别 cookie 什么是cookie? cookie的构成 cookie的特点 Cookie并不提供修改.删除操作 封装setC ...
- 大数据WEB阶段(十二)会话技术、Cookie、Session及两者的区别
会话技术 – Cookie与Session及其两者的区别 (一)会话技术 一.概述 1. 一个浏览器为了实现某一个功能对服务器产生了多次请求响应.从第一个请求开始访问服务器,会话开始,到最后一个页面访 ...
- Cookie与Session的联系与区别
2019独角兽企业重金招聘Python工程师标准>>> 什么是Session?Session什么时候产生? Session:在计算机中,尤其是在网络应用中,称为"会话 ...
- *.3ds文件格式与*.max文件格式的区别
问题: *.3ds文件格式与*.max文件格式的区别? 解答: *ds格式是老牌了,3dsmax的前身3dstudio的文件格式,当时也是业界的通用标准格式之一,所以现在仍然可以看到.这个格式能稳定地 ...
- Pytorch:.max(0)和.max(1)的区别?
Pytorch 中.max(0)和.max(1)的区别是什么? 当我们有一个形状为 ( m , n ) (m, n) (m,n) 的 Tensor x x x 时,其中 m m m 表示行数, n n ...
- Cookie和Session和Token的区别联系
目录 发展史 2 Cookie 3 Session 3.1 cookie和session的区别 4 Token 4.1 传统方式--基于服务器的验证 4.2 基于服务器验证方式暴露的一些问题 4.3 ...
- cookie以及Storage的共同点、区别与使用
文章目录 一. Storage浏览器本地存储 1-1 localStorage与 sessionStorage 1-2 使用 1-3 手写一个会过期的localStorage 1-3-1 惰性删除 1 ...
最新文章
- python querystring encode_百分号 json
- MySQL中修改密码及访问限制设置详解
- python打不开怎么办-python为什么打不开
- linux 文件解压 压缩
- 模糊数学笔记:七、模糊综合评判决策
- 10 个小技巧:快速用 Python 进行数据分析
- java to对象_java中同类对象之间的compareTo()和compare()方法对比分析
- MySQL基础总结(一)
- 零基础应该先学习 java、php、前端 还是 python?
- Linux 6.5选包截图
- 一文详解Attention机制
- 品优购-01分布式框架-Dubbox
- Origin申请、安装和激活手记
- x264源码分析与应用示例(二)——码率控制
- 软交换总结之二-七号信令
- 数据库SUSPECT(置疑)状态如何解决
- paddleocr文本识别模型的训练
- RS485自收发实现方案,典型应用电路及问题经验总结
- python 按键精灵识图_Python实现按键精灵(二)-找图找色
- gzip压缩文件损坏的修复方法
热门文章
- 带你了解SN74LVC245ADWR
- [iOS]图表(UUChartView)
- DBCO-PEG15-amine,DBCO-PEG15-NH2,二苯并环辛炔-十五聚乙二醇-氨基科研试剂供应
- 用户画像 - 挖掘标签
- excel 两组数据交点_如何在百万级的数据里找到别人正在赚钱的项目?【实操长文】...
- nginx配置 外网参考
- 阿里云的短信验证码(详细)
- 全球气象数据下载总结-CRU数据,ERA数据NCEP-2数据
- 设置网站页面标题的注意事项
- 【Vue.js】Vue.js组件库Element中的图片、回到顶部、无限滚动和抽屉