我在nginx上使用FPM运行PHP。这就是我设置umask for php的方式。
有时,www-data
用户编写的某些文件具有0644
权限,而不是预期的0664
,我应该将umask设置为0002
。这适用于随机文件(有时也适用于目录)。
Debian上的PHP和FPM组合的默认umask为0022
,但我的服务器设置为0002
。然而,不同的PHP代码行有时写入0664
,有时写0644
个文件。
file_put_contents($file, serialize($res));
我甚至添加了chmod()
行只是为了确保但没有运气。它似乎是随机的。
file_put_contents($file, serialize($res));
chmod($cacheFile, 0666 & ~umask());
对于获取0755
而不是0775
的目录,情况也是如此。
我该如何防止这种情况?