2014-02-05 60 views
3

如何禁用Yii上的http緩存?在我手動刷新瀏覽器之前,瀏覽器無法更新視圖。Yii禁用http緩存

有沒有像cakephp disableCache()?

回答

1

CakePHP的功能確實

$this->header(array(
    'Expires' => 'Mon, 26 Jul 1997 05:00:00 GMT', 
    'Last-Modified' => gmdate("D, d M Y H:i:s") . " GMT", 
    'Cache-Control' => 'no-store, no-cache, must-revalidate, post-check=0, pre-check=0' 
)); 

所以也許你可以做一個函數:

header("Expires: Mon, 26 Jul 1997 05:00:00 GMT"); 
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT"); 
header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0"); 

並在需要時調用它。

0

檢查您的控制器和/或基礎控制器(如果您使用的話)中的filters()方法。應該有像'CHttpCacheFilter'的東西,只是刪除它。默認情況下HttpCache沒有啓用。

更多細節: http://www.yiiframework.com/doc/guide/1.1/nl/caching.page#http-caching

如果不使用CHttpCacheFilter,請檢查您的.htaccess文件,也許有做以及一些HTTP緩存。