我的服务器有 Nginx , PHP5-FPM 。
我正在使用此配置在fpm池中运行1个进程:
user = php-site
group = www-site
listen = /var/run/php5-fpm_web.sock
listen.owner = php-site
listen.group = www-site
listen.mode = 0666
我有这些用户: - www-site(群组:www-site) - php-site(群组:www-site) - deploy(groups:deploy,www-site)
此部署用户只有SSH访问权限(composer,git deploy等)。
问题在这里,我的应用程序在缓存文件夹中创建缓存文件。缓存文件夹有 0775 (部署:www-site),但 cache / template / file.cache 有 0644 (php-site:www-现场)。当我想要清除此缓存文件夹时,我rm -rf cache/*
已收到Permission denied
。
我该怎么解决?如果php5-fpm会创建带有掩码 0666 的文件,那么一切都会好起来的。
答案 0 :(得分:0)
可能的方法:
1)将umask添加到基本PHP脚本(index.php
)
2)将umask添加到php5-fpm
个人资料,主进程或单个人
3)将umask添加到你的unix用户,php5-fpm或nginx运行的用户(http://www.cyberciti.biz/tips/understanding-linux-unix-umask-value-usage.html)