Eu estava tentando configurar o nginx para rodar com um dos meus aplicativos rails. Ao analisar a saída ps -e | grep nginx
, percebi que os processos do operador do nginx são executados com o usuário ninguém.
Existe uma razão pela qual eles não estão sendo executados como www-data?
apache-2.2
ubuntu
nginx
web-server
mu 無
fonte
fonte
Respostas:
Sim. Você provavelmente não especificou o usuário na sua configuração nginx .
Diretiva do usuário: http://nginx.org/en/docs/ngx_core_module.html#user
Como executar o nginx como um usuário específico?
Você pode especificar o usuário / grupo que o nginx executa como, na configuração do nginx.
Este é um exemplo de como pode ser uma configuração do nginx (observe a diretiva do usuário):
Simplesmente atualize sua configuração e, em seguida, recarregue ou reinicie o nginx e você deve estar pronto.
Claro que você deve escolher o usuário que funciona melhor para o seu sistema, no Debian / Ubuntu há um www-data por padrão, então essa é uma escolha sensata.
fonte
O processo mestre é executado como root e o nginx irá
setuid()
/setgid()
paraUSER
/GROUP
. SeGROUP
não for especificado, o nginx usa o mesmo nome queUSER
.Por padrão, ele é
nobody
usuário enobody
ou nogroup grupo ou do--user=USER
e--group=GROUP
do./configure
script.Você pode editar o nginx.conf e
set user to www www;
fonte