我编写了函数来缓存我网站中的每个页面,并将此函数放在 Bootstrap 文件中。
缓存文件在每个请求上创建,即使是同一页面。
我错过了什么吗?
即使我从配置中删除正则表达式数组,它也不起作用。
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();
}
来自 zend docs:
注意:使用 Zend_Cache 时,请注意重要的缓存标识符(传递给 save() 和 start())。对于您缓存的每个资源,它必须是唯一的,否则不相关的缓存记录可能会相互擦除,或者更糟糕的是,显示代替另一个。
阅读更多