【发布时间】:2010-03-09 17:30:28
【问题描述】:
我正在尝试在我的 Zend Framework 应用程序中实现全页静态缓存。使用静态后端与捕获前端相结合,可以缓存整个页面,并在未来通过 .htaccess 重定向提供服务,直到缓存被删除/重新生成。作为参考,我一直在使用手册中关于Zend_Cache_Backend_Static的部分,以及课程作者提供的一些further information。
根据示例,我已经为缓存(静态 HTML 文件)及其标签配置了目录,并添加了以下行:
$this->_helper->cache(array('index'), array('allentries'));
发给我的一位控制器。
HTML 文件在正确的位置创建,并且标签也按预期创建。但是,HTMl 文件始终为空白 - 0 字节。
我无法诊断问题,也找不到任何在线信息可以提供帮助。据我所见,从 Zend 应用程序接收输出的输出缓冲回调有一些问题,但我不知道具体出了什么问题。
谁能解释一下这个问题?
【问题讨论】:
-
似乎 ob_start 回调函数每次都被传递一个空字符串。如果我将字符串 'test' 附加到 Zend_Cache_Frontend_Capture::_flush 方法内的数据中,则只有字符串 'test' 被写入 HTML 文件。知道为什么回调没有收到生成页面的 HTML 内容吗?
标签: php zend-framework caching output-buffering