Thinkphp 3.2中控制页面不缓存
最近開發(fā)WAP網(wǎng)站時(shí),最討厭的就是back鍵,會(huì)造成些麻煩事。不過,問題總有辦法解決。
有些頁(yè)面,點(diǎn)擊back鍵回退會(huì)加載緩存,這不是想要的,所以希望能夠控制該頁(yè)面不緩存,每次請(qǐng)求都需要從服務(wù)器獲取最新數(shù)據(jù)。
解決思路就是通過控制 HTTP 的Cache-control 頭
可以看到,Thinkphp 3.2 默認(rèn)的Cache-control 為 private
那是因?yàn)榕渲梦募心J(rèn)設(shè)置為 private
頁(yè)面在渲染的時(shí)候?qū)⑦@個(gè)配置中的值設(shè)置為 Cache-control 頭
那根據(jù)以上信息,一開始我只想到兩種解決辦法:
1、修改配置中的值 => 不現(xiàn)實(shí),全局修改了
2、改寫源碼 => TP不可能這么傻
最后的解決辦法是:在控制頁(yè)面不緩存的方法中設(shè)置 C('HTTP_CACHE_CONTROL',"no-store");
那么順便再鞏固下 Cache-control 頭的一些參數(shù)設(shè)置:
具體參考 MDN 的web docs
轉(zhuǎn)載于:https://juejin.im/post/5b0666be6fb9a07ab459060d
總結(jié)
以上是生活随笔為你收集整理的Thinkphp 3.2中控制页面不缓存的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 修改docker的默认存储位置及镜像存储
- 下一篇: WPF实现物理效果 拉一个小球