对nginx-PHP权限感到困惑
我使用一个单独的PHP池在对nginx-PHP权限感到困惑,php,nginx,file-permissions,Php,Nginx,File Permissions,我使用一个单独的PHP池在nginx上运行一个Nextcloud实例nginx本身作为用户www-data运行,即用户www-data在/etc/nginx/nginx.conf中设置。池定义通过以下方式选择用户www-cloud user = www-cloud group = www-cloud listen.owner = www-data listen.group = www-data 我将PHP文件的所有权设置为www-cloud:www-data。如果我允许对其他人进行读取访问,则
nginx
上运行一个Nextcloud实例nginx
本身作为用户www-data
运行,即用户www-data
在/etc/nginx/nginx.conf
中设置。池定义通过以下方式选择用户www-cloud
user = www-cloud
group = www-cloud
listen.owner = www-data
listen.group = www-data
我将PHP文件的所有权设置为www-cloud:www-data
。如果我允许对其他人进行读取访问,则一切正常,但将640
设置为文件,将750
设置为目录,则会导致站点的404
。由于分别使用644
和755
,Nextcloud也可以更新其PHP文件,因此我假设PHP实际上按预期运行为www-cloud
但是,Nginx报告13:对/var/log/Nginx/error.log中的任何PHP文件的权限被拒绝
,除非我允许读取其他文件。当然,id www-data
产生www-data
作为其主要组
整个服务器本身就是一个LXC容器。我对SELinux的东西一无所知,但是容器中没有可用的getenforce
命令。但是SELinux也应该覆盖644
权限,不是吗
知道为什么nginx
无法访问www-cloud:www-data 0640
文件吗