CakePHP 2.0 – Cake无法写入文件缓存

我正在使用CakePHP 2.0 RC-1。从SVN检出项目后,应用程序开始抱怨说它不能将缓存文件写入tmp / cache目录。由于这是本地的,我知道目录是可写的,我可以清楚地看到目录甚至填充文件,所以错误有点奇怪。

以下是我遇到的一些错误:

_cake_core_ cache was unable to write 'cake_dev_nb' to File cache

fopen(c:\cake\app\tmp\cache\models\cake_model_default_media) [function.fopen]: failed to open stream: No error [CORE\Cake\Cache\Engine\FileEngine.php, line 127]

没有错误? WTH?

现在,如果我查看FileEngine文件,在第127行它读为:

if (!$handle = fopen($this->_File->getPathName(), 'c')) {
            return false;
}

用“w”代替“c”,不会遇到任何错误,一切正常。但是,不需要修改核心的Cake库来解决这个问题。让我重复一下,在我的另一台电脑上,这个工作原理是没有编辑核心库的。两者都使用Windows操作系统,对tmp / cache-folder的读/写权限是完全相同的。

编辑:这是一个经历我在本地出现错误输出的站点

Googling发现的示例网站。不是我的网站:http://www.12h30.net/credit/

有什么建议么?

编辑2:这就是为什么:如果你的PHP版本太低,在5.2.6之前,这是由“api55”在评论中概述的。谢谢回复。希望这也有助于你。

最佳答案
那么,在我的情况下,当我检查我的应用程序,它没有/ tmp文件夹。然后我创建了结构(/ tmp / cache / models,/ tmp / cache / persistent),并且都运行良好。这发生在我可能git忽略空文件夹,所以他们没有创建。

转载注明原文:CakePHP 2.0 – Cake无法写入文件缓存 - 代码日志