HTTP缓存头Last-Modified和ETag介绍

第一次请求

请求:

复制代码 代码如下:

GET /pic/201408/102.jpg HTTP/1.1

Host: www.jb51.net

Connection: keep-alive

Cache-Control: no-cache

Accept: image/webp,*/*;q=0.8

Pragma: no-cache

User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36

Referer: http://www.jb51.net/

Accept-Encoding: gzip,deflate,sdch

Accept-Language: zh-CN,zh;q=0.8

响应:

复制代码 代码如下:

HTTP/1.1 200 OK

Content-Length: 66529

Content-Type: image/jpeg

Last-Modified: Tue, 19 Aug 2014 12:23:54 GMT

Accept-Ranges: bytes

ETag: “029e570a8bbcf1:1ae2”

Server: Microsoft-IIS/6.0

X-Powered-By: ASP.NET

Date: Wed, 20 Aug 2014 00:29:03 GMT

xxx

第二次请求

请求:

复制代码 代码如下:

GET /pic/201408/102.jpg HTTP/1.1

Host: www.jb51.net

Connection: keep-alive

Cache-Control: max-age=0

Accept: image/webp,*/*;q=0.8

Pragma: no-cache

If-Modified-Since: Tue, 19 Aug 2014 12:23:54 GMT

User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36

If-None-Match: “029e570a8bbcf1:1ae2”

Referer: http://www.jb51.net/

Accept-Encoding: gzip,deflate,sdch

Accept-Language: zh-CN,zh;q=0.8

响应:

复制代码 代码如下:

HTTP/1.1 304 Not Modified

Last-Modified: Tue, 19 Aug 2014 12:23:54 GMT

Accept-Ranges: bytes

ETag: “029e570a8bbcf1:1ae2”

Server: Microsoft-IIS/6.0

X-Powered-By: ASP.NET

Date: Wed, 20 Aug 2014 00:29:54 GMT

HTTP缓存是为了节省网络传输数据量,服务器端的资源没有变化时返回304且内容为空。Last-Modified和ETag都是用于HTTP缓存,浏览器在第二次请求时会将其传回给服务器用于判断资源是否有变化。ETag是HTTP/1.1标准开始引入的,它是对Last-Modified的补充,主要原因有以下几点:

·一些周期性修改的文件,修改时间变了但内容没变,此时不希望重新GET;
·一些文件修改非常频繁,比如1秒内修改了多次,Last-Modified只能精确到秒;
·一些服务器不能得到文件修改的精确时间;

说明:HTTP/1.1标准没有规定Etag的内容是什么或者说要怎么实现,唯一规定的是Etag需要放在引号内。

原创文章,作者:晴川运维,如若转载,请注明出处:https://baike.qcidc.com/5631.html

(0)
晴川运维晴川运维
上一篇 2025年6月8日
下一篇 2025年6月8日

相关推荐

  • Windows Server 2012 IIS概述

    iis或Internet信息服务角色是windows server 2012中最重要的服务之一。与以前的版本相比,它具有改进的功能,它有助于我们发布Web应用程序或网页。 现在让我…

    IIS 2025年6月29日
  • WinHTTP Web Proxy Auto-Discovery Service 服务处于停止状态

    但是有一天早上来发现全部电脑都无法上网。PING ISA都不通。重新启动后正常。我检查系统日志里面有3条关于web代理的日志: 1。The WinHTTP Web Proxy Au…

    IIS 2025年6月4日
  • 服务器上w3wp.exe占用cpu过多有时候超过50%的原因分析

    解决CPU占用过多: 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时…

    IIS 2025年7月2日
  • IIS新手指南:进行IIS故障排除

    IIS新手指南:进行IIS故障排除 IIS新手指南:进行IIS故障排除 介绍 Internet Information Services(IIS)是一种由微软开发的Web服务器软件…

    IIS 2025年10月10日
  • urlscan.ini中文详解注释

    安装方法: 1. 解压后先双击UrlScan 2.5.EXE安装原版程序,安装完后会提示UrlScan has been succ…

    IIS 2025年10月19日
  • 独立主机/VPS 一键开启IIS的GZIP方法

    Windows服务器设置方法: 下载地址:iis6-SET-GZIP.rar 下载GZIP批处理文件,解压到任意位置,双击运行IIS6-SET-GZIP.cmd 即可迅速设置好GZ…

    IIS 2025年9月21日
  • win2003 iis配置PHP环境图文教程

    配置php环境 下载 FastCGI 1.5 for iis x86 / x64,添加fastcgi映射 编辑C:\WINDOWS\system32\inetsrv\fcgiext…

    IIS 2025年6月12日
  • IIS指令: appcmd list modules – 列出模块

    IIS指令: appcmd list modules – 列出模块 IIS指令: appcmd list modules – 列出模块 在使用IIS(Int…

    IIS 2025年10月21日
  • iis7.5 URL重写零基础入门介绍

    首先说的是IIS7.5,win7或者win2008都支持,然后要下载一个微软的组件:Url重写组件,这里发个64位的组件,如果你的系统是32位的可以网上找下,很多的。 64位URL…

    IIS 2025年6月14日
  • Win2003里面地web园特性详细解说

    什么是 Web 园? 问: IIS 6.0 具有一个名为 Web 园的新功能,有了它,可以将应用程序池配置为使用多个工作进程。IIS 何时创建额外的工作进程?在我们实施 Web 园…

    IIS 2025年9月22日

发表回复

登录后才能评论