php 浏览器不缓存页面,后退或history.go(-1)是加载新页面同时也是浏览不留痕

       //禁止缓存页面 防止订单页面不给钱直接返回键 导致购物车中生成订单的商品还存在
        $time = time() - 60*60*24;// or filemtime($fn), etc   
        header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT');
        header("Expires:".gmdate("l d F Y H:i:s").' GMT');
        header("Pragma: no-cache");

        C('HTTP_CACHE_CONTROL','no-cache,no-store,must-revalidate');//红色才是重点


Cache-Control: no-cache:这个很容易让人产生误解,使人误以为是响应不被缓存。实际上Cache-Control: no-cache是会被缓存的,只不过每次在向客户端(浏览器)提供响应数据时,缓存都要向服务器评估缓存响应的有效性。

 

Cache-Control: no-store:这个才是响应不被缓存的意思。

 

Pragma: no-cache:跟Cache-Control: no-cache相同,Pragma: no-cache兼容http 1.0 ,Cache-Control: no-cache是http 1.1提供的。因此,Pragma: no-cache可以应用到http 1.0 和http 1.1,而Cache-Control: no-cache只能应用于http 1.1.


你可能感兴趣的:(php)