为每次访问提供明确的缓存吗?

时间:2012-02-01 06:11:04

标签: php zend-framework

我有一个在zend框架中开发的应用程序。我需要确保浏览器是 每次加载我的网站时都不使用缓存。有没有办法为每次访问制作zend clear cache?我正在寻找可能的ini设置。

2 个答案:

答案 0 :(得分:2)

如果您使用会话(Zend_Session),PHP会自动发送这些标题。

如果你不在Zend控制器中使用会话,你可以使用它:

<?php

class SomeController extends Zend_Controller_Action {
    function indexAction(){
        $this->getResponse()->setHeader('Cache-Control','no-store, no-cache, must-revalidate, post-check=0, pre-check=0',1);
        $this->getResponse()->setHeader('Expires','Thu, 19 Nov 1981 08:52:00 GMT',1);
        $this->getResponse()->setHeader('Pragma','no-cache',1);
    }
}

答案 1 :(得分:0)

我不知道这是不是一个好主意,但你可以从阅读本文开始:

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

在14.9段。有完整的缓存控制说明。

例如,如果您想确保用户始终看到最新版本,您可以为缓存条目设置一个较短的到期时间......

请注意:如果您不让浏览器缓存内容,那么每次访问都会因为第一次加载而变慢...(特别是如果有很多图像和“重”对象)

良好的编程!