`
macken
  • 浏览: 345628 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Http Header Last-Modified与ETag的区别

 
阅读更多

Etag是在HTTP 1.1中引入的,为了解决一些Last-Modified无法解决的问题,比如:

1.网站中的某些文件会定期的更新,但是文件内容并为改变;

2.文件更新非常频繁,Last-Modified精确到秒不能满足需求;

3.部分服务器不支持精确时间;

 

参考资料:

http://www.iwms.net/n2029c12.aspx

http://xu20cn.blog.51cto.com/274020/112715

分享到:
评论

相关推荐

    Http 1.1 Etag 与 Last-Modified提高php效率

    在 MagpieRSS 的 Features 中列举了这样的一条: HTTP Conditional GETs Save bandwidth and speed up download times with intelligent use of Last-Modified and ETag.. 这里的 Etag 引起了我的注意. 什么是 ...

    Laravel开发-laravel-weak-etag-middleware

    在Laravel中,中间件可以通过`$response->header()`方法添加自定义响应头,包括ETag。然而,"laravel-weak-etag-middleware"特别之处在于它实现了弱ETag。弱ETag不区分大小写,并且允许一些元信息的变化而不改变其值...

    Laravel开发-laravel-etag

    - **配合Last-Modified**:Etag可以和Last-Modified头一起使用,提供双重验证,提高缓存效率。 - **慎用ETag限速**:在使用Etag进行限速时,要考虑Etag验证的性能影响,以及避免因Etag计算过于频繁导致服务器负担...

    Etag和Expires.docx

    在后续请求中,客户端会在HttpRequest Header中发送If-Modified-Since报头,包含之前接收到的Last-Modified时间。如果服务器上的文件自上次请求后未被修改,服务器将返回304 Not Modified状态码,客户端则直接从本地...

    记录并显示网页的最后修改时间

    Response.AddHeader("Last-Modified", lastModified.ToString("R")); } ``` 4. **客户端JavaScript** 在前端,我们可以通过JavaScript的`XMLHttpRequest`对象的`getResponseHeader`方法获取`Last-Modified`值,...

    RemETag_去除iis的etag_配置ETag_iis性能优化

    Etags原理:Add an Expires header已经对浏览器缓存机制中的Cache-Control和Expires进行了配置,这一条评测的是另外两个:Last-Modified和ETag。简单的说,即使设置了文件的期限,浏览器在访问资源时也会因为Last-...

    Apache PHP利用HTTP缓存协议原理解析及应用

    本文将深入解析Apache和PHP如何通过HTTP缓存协议优化网站性能,重点探讨Cache-Control、Expires、Last-Modified以及Etag等关键头部字段的应用。 #### 一、Apache与静态页面缓存 对于Apache服务的静态页面,Last-...

    tcp/ip-HTTP-Header-消息报头

    ### TCP/IP-HTTP-Header-消息报头 在TCP/IP协议族中,HTTP(超文本传输协议)是一种应用层协议,用于从Web服务器传输超文本到本地浏览器的传输协议。HTTP报文由请求行、状态行、首部字段(Header)、空行以及可选的...

    浏览器之HTTP缓存的那些事

    在实际应用中,Nginx往往会同时支持Last-Modified和ETag,以提高缓存效率和准确性。 #### 七、总结 综上所述,了解和掌握浏览器缓存机制及其相关的HTTP头部信息对于优化网站性能至关重要。通过合理配置这些头部...

    HTTP协议Header详解.html

    HTTP协议Header详解是html帮助格式的,方便查询, 通过HTTP协议RFC2616整理的, 目录: 头域定义 2 1 Accept 2 2 Accept-Charset 4 3 Accept-Encoding 5 4 Accept-Language 6 5 Accept-Range 7 6 Age 7 7 Allow 8 8 ...

    HTTP 请求报头详解

    * Entity Header Fields:Allow、Content-Encoding、Content-Language、Content-Length、Content-Location、Content-MD5、Content-Range、Content-Type、Expires、Last-Modified、extension-header HTTP 报头字段是...

    PHP下利用header()函数设置浏览器缓存的代码

    header("Last-Modified: " . gmdate("r", $max)); ``` 其中,`gmdate()`函数用于格式化时间,`"r"`参数表示遵循RFC 2822格式的HTTP日期。 2. **Expires**: Expires头标用于设置资源的过期时间,以格林威治标准...

    node.js实现http服务器与浏览器之间的内容缓存操作示例

    注意,实际应用中可能需要处理ETag与Last-Modified的兼容性,以及考虑CDN环境下的缓存策略。 总之,通过理解和有效地实施HTTP缓存机制,开发者能够优化Web应用性能,减少服务器负载,并为用户提供更快的加载速度。...

    HTTP 响应码和Header信息介绍文档

    * 响应头标:Server、Set-Cookie、Expires、Last-Modified、ETag * 实体头标:Content-Type、Content-Disposition、Content-Range 这些头标用于描述客户端和服务器之间的交互信息,使得 HTTP 协议能够正确地传输...

    HTTP_Header_详解.doc

    - `Last-Modified` 为资源的最后修改时间。 4. **Other Headers**: - `Pragma: no-cache` 是一个向后兼容的缓存控制头,与 `Cache-Control` 类似。 - `Proxy-Authorization`: 用于向代理服务器提供认证信息。 ...

    深入PHP与浏览器缓存的分析

    $lastModified = gmdate("D, d M Y H:i:s") . " GMT"; if ($_SERVER["HTTP_IF_MODIFIED_SINCE"] == $lastModified) { header('Last-Modified: ' . $lastModified, true, 304); exit(); } else { header('Last-...

    Apache环境下PHP利用HTTP缓存协议原理解析及应用分析

    1. **Last-Modified与ETag**: - `Last-Modified`头字段指示资源的最后修改时间,对于静态文件如HTML,这个时间通常基于文件的修改时间。当客户端(如浏览器)再次请求资源时,它会发送之前保存的`If-Modified-...

    php header函数的常用http头设置

    - Last-Modified头部指明文档最后修改的时间,与HTTP/1.1 304 Not Modified结合使用,用于实现条件请求。 ```php $time = time() - 60; // 1分钟前修改 header('Last-Modified: ' . gmdate('D, d M Y H:i:s', $...

    PHP 网页过期时间的控制代码

    需要注意的是,代码中出现了一些OCR识别错误,例如“gmmktime”应该是“gmdate”,“If-Modified-Since”和“Last-Modified”应该放在header函数中第一个参数的位置。 除此之外,实际的生产环境中还需要考虑其他...

Global site tag (gtag.js) - Google Analytics