在777设置缓存掩码后,缓存文件上生成的权限是只读的

时间:2013-11-25 10:03:25

标签: cakephp caching cakephp-2.0 cakephp-2.4

我在ubuntu 12.04 LTS上使用php5.3.10。

我正在运行CakePHP 2.4.2。

这是我的bootstrap.php

// Setup a 'default' cache configuration for use in the application.
Cache::config('default', array(
    'engine' => 'File',
    'mask' => '0777'
));

这是我的缓存文件夹

enter image description here

如您所见,生成的缓存文件不是777。

我不知道还能做什么。我重新启动了服务器。

我确保tmp文件夹是777。

请告知。

2 个答案:

答案 0 :(得分:0)

请尝试此命令

sudo chmod -R 777 cakephp/app/tmp

答案 1 :(得分:0)

答案是丢失了掩码选项的单引号。

// Setup a 'default' cache configuration for use in the application.
Cache::config('default', array(
    'engine' => 'File',
    'mask' => 0777 // no single quotes!!!!
));

对于任何不相信我的人,请查看为2.x生成core.php的模板skel的源代码

https://github.com/cakephp/cakephp/blob/2.x/lib/Cake/Console/Templates/skel/Config/core.php#L273

'mask' => 0664, //[optional]

如您所见,没有引号。这对我有用。