http header头设置反向代理不缓存

晨曦之光 发布于 2012/03/09 14:50
阅读 866
收藏 0
 

一:概念说明

    Expries:网页的cache过期时间,到指定日期网页cache失效

    Last-Modified:网页的最新更新时间

    Cache-Control 缓存控制

            no-cache:不缓存网页

            no-store:不缓存网页,如果有则删除之

            must-revalidate:使之前,服务器响应使用cache生存时间生效

            post-cache: IE5.0懒惰”更新开关,设置为0,表示及时更新.

          pre_cache:IE5.0懒惰”更新开关,设置为0,表示及时更新.

       max-age:同expires,优先级高于Expires,会覆盖expires的值。

    Pragma

        no-cache:不缓存网页,为了兼容浏览器,有些浏览器设置些指令有效。

:所有时间的设置都采用GMT格式,这是http协议里规定的 http时间(HTTP-date格式

 

二:PHP输出控制

    A:输出不缓存

      header("Expires:过去的一个时间");

      header("Last-Modified:当前时间");

      header("Cache-Control:no-stroe,no-cache,must-revalidate,post-check=0,pre-check=0");

      header("Pragma:no-cache");  //反向代理可以不缓存网页

 

            示例:

            header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

            //1997726日 cache失效,因为时间早已经过去,所以cache失效.

            header("Last-Modified: " . gmdate("D, d M Y H:i:s") . "GMT");

            //cache更新时间

            header("Cache-Control: no-cache, must-revalidate, no-store, no-cache, must-revalidate, post-check=0, pre-check=0");

            //不缓存网页

            header("Pragma: no-cache");

            //不缓存网页

   B:输出永久缓存

      header("Expires:未来的一个时间");

      header("Last-Modified:当前时间");

      

   C:输出缓存一部分时间后失效

      header("Expires:失效的时期");

      或者:header("Cache-Control:max-age=秒数");

      header("Last-Modified:当前的时间");      


原文链接:http://blog.csdn.net/21aspnet/article/details/6596111
加载中
返回顶部
顶部