4

我正在将 CakePHP 1.3 应用程序更新到 2.2.4,并按照 CakePHP Book 2.0 中概述的步骤打开视图缓存。视图缓存在 1.3 应用程序中一直运行良好,但是当我在 2.2.4 应用程序中打开它时,每个视图都会最初显示。但是,一旦视图被缓存,任何后续尝试加载该视图都会导致空白页面没有源代码和错误消息。

这是我到目前为止所尝试的:

  1. 尝试将调试级别从 0 更改为 1 和 2。
  2. 仔细检查了我的引导文件以确保加载了 CacheDispatcher。
  3. 仔细检查了我的 AppController 是否有 public $helpers = array('Cache');
  4. 仔细检查了我的 AppController 的 public $cacheAction = true;
  5. 将 tmp 文件夹、子文件夹和文件 chmod 到 777。
  6. 检查调试和错误日志是否有错误,但一无所获。
  7. Apache 错误和访问日志也没有显示错误。

如果我从 tmp/cache/views 中删除缓存的视图,然后重新加载它显示的页面。但是由于视图被缓存,另一个重新加载会导致空白页面。知道这里发生了什么吗?它在 1.3 应用程序中工作...

4

2 回答 2

5

在我的应用程序控制器中,我更改了: public $cacheAction = true; 公开 $cacheAction = "1 小时"; 并且视图现在从缓存而不是空白页面显示。我会称这个为固定的。

于 2012-12-19T22:40:36.233 回答
0

完全空白的页面,没有错误,消息...等几乎总是在 PHP-only 文件中的关闭 PHP 标记结束后有一个空格或额外字符。检查您的控制器、模型、行为...等。(在纯 PHP 文件中完全不关闭 PHP 标记是一种很好的做法。这样可以防止出现空白屏幕)。

于 2012-12-19T20:47:21.000 回答