HTTP02--Http请求头及缓存知识
一、常用工具
Linux下:curl命令,I参数可以查看http head信息。
Firefox:Firebug、HttpFox
二、常见Http Head信息
三、浏览器缓存机制
使用ctrl+F5,可强制浏览器直接向url发起请求,而不会使用缓存信息。此时,会在http head中增加2个参数
1、Cache-Control字段
Pragma:no-cache和Cache-Control:no-cache,Cache-Control被浏览器支持较好,优先级较高,跟其他字段(如Expires)使用时,会覆盖其他字段的含义。
Cache-Control字段可选值列表如下:
2、Expires字段
通常格式为Tue, 22 Dec 2026 22:46:56 GMT,浏览器发起请求前,先检查该资源的该字段,若过期,才会重新向服务器发起请求。
3、Last-Modified/Etag
表示该资源最后修改时间,资源可是静态的(静态资源会自动加上Last-Modified)或动态的(servlet提供了getLastModified方法),通过该字段判断该资源是否是最新的。
一般服务器响应头会返回一个Last-Modified字段,告诉浏览器该资源最后修改时间,浏览器再次请求时,会加上If-Modified-Since字段,询问缓存页是否最新。若未最新,服务器返回304,且不传输数据。
四、NGINX配置缓存信息
待补充
HTTP02--Http请求头及缓存知识的更多相关文章
- http 请求头设置缓存
nginx不缓存设置 2013-08-15 10:47:39 分类: LINUX 在开发调试web的时候,经常会碰到因浏览器缓存(cache)而经常要去清空缓存或者强制刷新来测试的烦恼,提供下apa ...
- 网路知识总结(session&&Cookie&&三次握手&&请求头)
1. 请说明Session和Cookie的作用和区别 1) Cookie 存在前端 前端需要拿着cookie访问后端,Session在服务器上(文件,数据库,如Redis) 2) web访问Serve ...
- Http请求头缓存设置方法
1.直接在.aspx页面中设置最直接的,在.aspx页面中添加一行如下代码: <%@ OutputCache Duration="3600" VaryByParam=&quo ...
- http请求头缓存实现
转自CSDN ouyang-web之路 原文链接:https://blog.csdn.net/cangqiong_xiamen/article/details/90405555 一.浏览器的缓存 st ...
- Android系列之网络(二)----HTTP请求头与响应头
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...
- Web开发人员需知的Web缓存知识
最近的译文距今已有4年之久,原文有一定的更新.今天踩着前辈们的肩膀,再次把这篇文章翻译整理下.一来让自己对web缓存的理解更深刻些,二来让大家注意力稍稍转移下,不要整天HTML5, 面试题啊叨啊叨的~ ...
- 前端必备HTTP技能之HTTP请求头响应头中常用字段详解(转)
作为一名前端开发人员,肯定少不了要和网络打交道,因为要从服务器端拉取数据,从服务端获取数据最常用的方式还是通过HTTP请求.给服务器发请求的时候有请求头,接受服务器响应的时候有响应头,客户端和服务器端 ...
- HTTP 请求头中的 X-Forwarded-For(转)
原文:https://imququ.com/post/x-forwarded-for-header-in-http.html 我一直认为,对于从事 Web 前端开发的同学来说,HTTP 协议以及其他常 ...
- Web 开发人员需知的 Web 缓存知识
今天踩着前辈们的肩膀,再次把这篇文章翻译整理下.一来让自己对web缓存的理解更深刻些,二来让大家注意力稍稍转移下,不要整天HTML5, 面试题啊叨啊叨的~~ 什么是Web缓存,为什么要使用它? Web ...
随机推荐
- Mysql函数instr、locate、position VS like
Mysql 大家都会用这样的語法: SELECT `column` FROM `table` where `condition` like `%keyword%’ 事实上,可以使用 locate 和 ...
- 【EF学习笔记07】----------加载关联表的数据 贪婪加载
讲解之前,先来看一下我们的数据库结构:班级表 学生表 贪婪加载 //贪婪加载 using (var db = new Entities()) { var classes = db.Classes.Wh ...
- IOS App Integrate Google Map Problems and Method to solve them
1. You must get a key in google developer center, and register it in below function in AppDelegate.m ...
- malloc()参数为0的情况
问题来自于<程序员面试宝典(第三版)>第12.2节问题9(这里不评价<程序员面试宝典>,就题论题): 下面的代码片段输出是什么?为什么? char *ptr; ))==NULL ...
- Centos上DNS服务器的简单搭建
1:安装软件包 yum -y install bind bind-chroot bind-utils bind-libs 2:修改配置文件 1): vim /etc/named.conf 2):在主 ...
- Selenium2+python自动化7-xpath定位
前言 在上一篇简单的介绍了用工具查看目标元素的xpath地址,工具查看比较死板,不够灵活,有时候直接复制粘贴会定位不到.这个时候就需要自己手动的去写xpath了,这一篇详细讲解xpath的一些语法. ...
- jquery 滚动到底部加载
var body_ = $(window); var indexPage = 2; var pageCount = <?php echo $pageCount;?>; var _ajaxR ...
- protocol buffers的使用示例[z]
[http://blog.csdn.net/zhu_xun/article/details/19397081] protocol buffers的使用示例 如果不了解protocol buffers, ...
- redis在windows中的安装
之前介绍过了redis的相关知识,以及在linux平台上安装redis,为了方便学习,这里记录一下redis在windows平台上的安装步骤 1.下载redis下载地址https://github.c ...
- XML文件操作(C#)
XML应用于Web开发的许多方面,常用于简化数据的存储和共享,它的设计宗旨是传输数据,而非显示数据.下面简单介绍一下C#是如何对XML文件进行读取的. 1.首先,建立XML对象并关联XML文件 str ...