Sempre acostumei-me a executar o PHP no Nginx como o usuário www-data
, para tudo: serviço php, cron, CLI, etc. Recentemente, depois de ler primeiro este artigo e depois < href="http://devdocs.magento.com/guides/v2.0/cloud/before/before-workspace-file-sys-owner.html"> este artigo , eu gostaria de saber Quão necessário é executar esses serviços usando um usuário diferente? Isto é para uma única aplicação Magento 2 no servidor.
É suficiente criar um novo usuário:
adduser magento2user
passwd magento2user
usermod -a -G www-data magento2user
Em seguida, em php /usr/local/etc/php-fpm.d/www.conf
:
[www]
user = magento2user
group = magento2user
...
listen.owner = www-data
listen.group = www-data
E finalmente:
chown -R magento2user:www-data /var/www/html
Minha confusão está vindo disso nos Magento 2 DevDocs :
We recommend two users if you run your own Magento server: one to transfer files and run command-line utilities, and a separate user for the web server software. When possible, this is preferable because it’s more secure.
Instead, you have separate users:
• The web server user, which runs the Magento Admin (including Setup Wizard) and storefront.
• A command-line user, which is a local user account you can use to log in to the server. This user runs Magento cron jobs and command-line utilities.
Portanto, o PHP-FPM deve ser executado como www-data
, mas os arquivos pertencem a magento2user
que pertence ao grupo www-data
?
EDIT depois da resposta de Simon Greenwood abaixo
Se eu executar ps aux | grep nginx | grep -v grep
, recebo a seguinte saída:
1 www-data 0:00 nginx: master process nginx -g daemon off;
7 www-data 0:00 nginx: worker process
... então eu não acho que eu precise de uma entrada em 'etx/nginx/nginx.conf
que leia user www-data