miércoles, 16 de marzo de 2022

nginx: [emerg] getgrnam("deploy") failed



Cómo cambiar el usuario desde el que se ejecuta NGINX.



Hoy me han pedido que cambie el usuario desde el que se ejecuta nginx de "nginx" a "deploy", y me he encontrado algún problema durante el proceso.

Primero he comentado la línea:

user nginx;

y he añadido la línea:

user deploy;

dentro de /etc/nginx/nginx.conf.

A continuación, he comprobado la validez del fichero de confgiuración con:

HOST:/ # nginx -t nginx: [emerg] getgrnam("deploy") failed in /etc/nginx/nginx.conf:2 nginx: configuration file /etc/nginx/nginx.conf test failed

Tras buscar por internet he encontrado que se debe espcificar el nombre del grupo después del nombre de usuario (con un espacio en blanco entre ellos), es decir:

user usuario grupo;

Si no se especifica el grupo, NGINX toma como nombre de grupo el nombre de usuario.

Para aplicar este cambio de configuración, primero he comprobado su validez:

HOST:/ # nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Acto seguido, he cargado la nueva configuración:

nginx -s reload

Tras este reload, nginx arrojaba un error 500 al navegar por la web, por lo que he optado por reiniciar el servicio nginx por completo:

systemctl restart nginx

Tras reiniciar el servicio, la web ha funcionado con normalidad.
0