HTTP 缓存

曾经最困惑我的问题就是,如果服务器上的一个资源已经在本地保存了副本,那第二次再访问此资源并且此资源还没有过期,还要不要进行HTTP连接?是否需要网络?
HTTP 权威指南中是这样写的:原始服务器的内容可能会发生变化,缓存要不时的对其进行检测,看看保存的副本是否为最新的。“新鲜度检测”被称为HTTP再验证(revalidation)。为了有效的验证,HTTP定义了一些特殊的请求,不要用从服务器获取整个对象,就可以快速检测出内容是否为最新。
由于缓存中通常会包含数百万文档,而且网络宽带比较珍贵,所以大部分缓存只有客户端发起请求,并且副本旧的足以需要检测时,才会再验证。

所以通过上面的文章可以得出, 在资源未过期是不会进行验证的。

看到一篇很不错的文章:http://kb.cnblogs.com/page/166267/