Jun13

ETag与Expires的区别

Author: leeon  Click: 908   Date: 2010.06.13 @ 18:57:00 pm Category: 优化
ETag是用在向服务器GET请求的时候判断文件是否过期。
而Expires是用来判断本地缓存的组件是否过期。
Etag 和 If-Modified-Since 均是用来判断服务器端的文件是否过期。
如果页面已经缓存,当页面刷新(F5)的时候浏览器不会向服务器GET请求。
如果页面(Ctrl+F5)的时候浏览器会向服务器发起询问,If-Modified-Since提交本地记录的组件的日期给服务器,如果服务器查询组件未做修改,那么返回304(Not Modified),如果服务器端文件有做修改那么服务器会返回新的组件给客户端。
Expires 和 Cache-Control用来判断本地电脑中的缓存文件是否过期。

通常的页面访问中,如果是访问一个全新的页面那么ETag,Expires的作用如下:
第一次访问服务器会将ETag和Expires发送给浏览器。
再次访问浏览器会根据缓存来加载组件,此时如果有缓存的就不发起HTTP请求。如果本地有缓存但是依旧强制向服务器提交组件的GET请求,那么ETag就会派上用场。

Cache-ControlExpires 有更高的优先级。
If-None-Match(ETag) If-Modified-Since(Last-Modified)有更高的优先级。

TAG:   etag expires

    评论
    • 提交

    分类

    标签

    归档

    最新评论

    王爷在21:32:04评论了
    【原创】获取jQuery中Ajax函数的返回值的方法
    Funny在10:22:51评论了
    shell数组使用方法小记
    kevinems在11:30:08评论了
    【原创】使用gitosis和tortoisegit打造自己的git服务
    candy在13:11:40评论了
    【原创】beautifulsoup解析中文网页乱码解决
    thenbsp.com在16:17:48评论了
    中国邮政EMS就是一坨屎

    我看过的书

    链接

    其他

    访问本站种子 本站平均热度:1218 c° 本站链接数:55 个 本站标签数:250 个 本站被评论次数:33 次