我正在开发一个 CakePHP 2 项目。它最初从 2.0.x 开始,然后最近迁移到 2.1.0。在整个开发过程中,我一直收到以下错误消息。
它意外地出现在页面顶部。可能是当我只是查看不同的页面时,或者甚至在我将记录添加到数据库之后(但记录正确保存)。
Warning:
SplFileInfo::openFile(/var/www/cake_prj/app/tmp/cache/persistent/cake_core_cake_console_):
failed to open stream:
Permission denied in
/var/www/cake_prj/lib/Cake/Cache/Engine/FileEngine.php on line 293
我递归地将 tmp 文件夹的所有者和组设置为 apache,但仍然收到消息。此外,我然后递归地为所有人设置读取、写入和执行的权限(chmod 777)。错误消息仍然弹出。
即使在更改了所有者、组和权限之后,有问题的文件:
cake_prj/app/tmp/cache/persistent/cake_core_cake_console_
将其所有者和组设置回root,并将其权限设置回默认值。
什么可能导致这个问题?有没有办法确保每次生成这个文件时,它总是有 apache:apache 具有读/写/执行权限?