Em uma configuração Nginx, você provavelmente usa o PHP-FPM para interpretar scripts PHP. O PHP-FPM possui sua própria configuração, que define pools. Cada pool pode ser executado como seu próprio usuário. Em essência: O Nginx precisa ser capaz de ler arquivos (estáticos) que você serve diretamente dele (e atravessar (ou seja, x) as permissões no diretório) O PHP-FPM (o conjunto relevante) precisa ter acesso de leitura aos arquivos e gravar o acesso à pasta (ou a quaisquer arquivos que você queira modificar) (e passar permissões).
A configuração do PHP-FPM geralmente está localizada em /etc/php-fpm.conf e /etc/php-fpm.d / *. conf
A parte relevante de uma configuração PHP-FPM pode se parecer com o seguinte:
[pool_name]
listen = 127.0.0.1:9000
user = apache
group = apache
Verifique se o usuário está executando o PHP-FPM com: ps -ef | grep php-fpm
(você pode ter várias instâncias do php-fpm, possivelmente com mais de um usuário, se tiver vários pools).
(Como um aparte, se você olhar em sua configuração Nginx, provavelmente encontrará uma referência ao manipulador FastCGI como: fastcgi_pass 127.0.0.1:9000;
. O endereço e a porta especificados aqui precisam corresponder ao endereço e à porta do pool usuário / grupo que você está modificando).
Além disso, apenas para fins de diagnóstico, em vez de olhar para o usuário em que o nginx estava sendo executado, você pode ter pesquisado qual programa estava sendo executado como o usuário apache (por exemplo, ps -ef | grep apache
).