Estaba tratando de configurar nginx para que se ejecute con una de mis aplicaciones de rieles, cuando ps -e | grep nginx
eché un vistazo a la salida , me di cuenta de que los procesos de trabajo de nginx se ejecutan con el usuario nobody.
¿Hay alguna razón por la que no se ejecutan como www-data?
Respuestas:
Si. Lo más probable es que no haya especificado el usuario en su configuración nginx .
Directiva del usuario: http://nginx.org/en/docs/ngx_core_module.html#user
¿Cómo ejecutar nginx como un usuario en particular?
Puede especificar el usuario / grupo con el que se ejecuta nginx, en la configuración de nginx.
Este es un ejemplo de cómo se vería una configuración nginx (observe la directiva del usuario):
Simplemente actualice su configuración y luego vuelva a cargar o reinicie nginx y debería estar listo.
Por supuesto, debe elegir el usuario que funcione mejor para su sistema, en Debian / Ubuntu hay un www-data por defecto, por lo que es una opción sensata.
fuente
El proceso maestro se ejecuta como root, luego nginx will
setuid()
/setgid()
toUSER
/GROUP
. SiGROUP
no se especifica, entonces nginx usa el mismo nombre queUSER
.Por defecto es
nobody
usuario y /nobody
o nogroup group o--user=USER
y--group=GROUP
del./configure
script.Puede editar nginx.conf y
set user to www www;
fuente