我在实验PHP设置Cache-Control和Expires来控制浏览器缓存的时候, 无论怎么设置, 浏览器缓存就是不起作用,
1:使用Cache-Control
header('Cache-Control:max-age=120');
echo time();
这种方式每次都还是更新time()
2: 使用Expires
与Cache-Control类似,
header("Expires: ".gmdate('D d M Y H:i:s ', time()+60*2).' GMT');
echo time();
同样无法缓存起来
请问这是什么问题。
另外, Cache-Control的max-age如果设置了,比如3600,是不是3600s内浏览器再次访问时都不会再对服务器请求了,而是直接拉本地缓存数据, 还是说请求了, 但返回了一个类似于304的状态码?
在系统默认情况下, 假如是静态文件, 则默认使用Last-Modified缓存方式?
如果是动态PHP文件, 在php代码中, 是不是还要手动的返回304或者走完代码, 返回数据
php header
动态内容是不建议缓存
如果要缓存可以采用一下策略