Zend Cache不从其缓存中读取

时间:2013-12-18 22:15:29

标签: php zend-framework caching zend-cache

我写了一个函数来缓存我网站上的每一个页面,并把这个函数放在Bootstrap文件中。

每个请求都会创建缓存文件,即使对于同一页面也是如此。

我错过了什么吗?

即使我从配置中删除了regexps数组,它也无法正常工作。

Zend 1.12.3

protected function _initCache() {
    $cachePath = APPLICATION_PATH
        . DIRECTORY_SEPARATOR
        . '..'
        . DIRECTORY_SEPARATOR
        . '_cache';

    $fO = array(
        'lifetime' => 7200,
        'automatic_serialization' => true,
        'regexps' => array(
            '^/admin/' => array(
                'cache' => false
            ),
            '^/account/' => array(
                'cache' => false
            ),
            '^/cart/' => array(
                'cache' => false
            ),
        ),
        'content_type_memorization' => true,
        'default_options' => array(
            'cache' => true,
            'cache_with_get_variables' => true,
            'cache_with_post_variables' => true,
            'cache_with_session_variables' => true,
            'cache_with_cookie_variables' => true,
        ),
    );

    $bO = array(
        'cache_dir' => $cachePath
    );

    $cache = Zend_Cache::factory('Page', 'File', $fO, $bO);
    $cache->start();
}

1 个答案:

答案 0 :(得分:0)

来自zend docs:

  

注意:使用Zend_Cache时,请注意重要的缓存标识符(传递给save()和start())。对于您缓存的每个资源,它必须是唯一的,否则不相关的缓存记录可能会相互擦除,或者更糟糕的是,将显示为另一个。

read more