2012-10-12 198 views
0

在服务器 - 客户端设置中,当服务器向客户端发送2天到期的页面时,我是否正确地指出,直到客户端收到服务器响应后2天,客户端才会加载缓存页面?服务器客户端缓存

真正的问题:客户端中的页面尚未过期,服务器是否可以推送客户端来检查页面的修改副本?

我希望客户端只有在页面过期或服务器推送它们时才请求。

回答

0

根据我能做的http://www.ietf.org/rfc/rfc2616.txt,是的,这就是过期控制的意图 - 一个页面的“过时”级别,可用于脱机浏览或在网络响应不佳的情况下可接受。

第14.9.4节确实声明客户端和缓存在接收必须重新验证指令时的行为方式。这不会强制客户端下载,只是为了检查服务器的最后修改日期,这是我认为你需要的。

在IIS中的指令是

<% Response.Expires = -1 %> 

,你可以阅读更多关于http://support.microsoft.com/kb/234067。他们讨论禁用缓存,但是这样做会破坏目的并降低效率。

在PHP中的指令是

header ("cache-control: must-revalidate");