getpwnam ("www") falló en /etc/nginx/nginx.conf


24

Copié la muestra nginx.conf en mi cuadro ubuntu 12.04 (no sé dónde poner los otros archivos conf. Soy un novato nginx). Cuando intento iniciar nginx me sale el siguiente error:

abe-lens-laptop@abe:/etc$ sudo service nginx start
Starting nginx: nginx: [emerg] getpwnam("www") failed in /etc/nginx/nginx.conf:1
nginx: configuration file /etc/nginx/nginx.conf test failed

¿Qué significa este error? ¿Cómo puedo arreglarlo? Encontré esta publicación pero mi usuario ya está configurado en www www (si ve en el archivo vinculado) ¿Cómo cambio el usuario de NGINX?


Enlace a nginx.config está roto
Josh Noe

Respuestas:



8

Su otra opción (si no desea crear un nuevo usuario) es reemplazar el campo de usuario en nginx.conf con:

user nobody;

3

Crea el wwwusuario. En Ubuntu, esto debe hacerse usando el siguiente comando y banderas:

sudo adduser --system --no-create-home --shell /bin/false --group --disabled-login www

0

Si bien la respuesta de Michael Hamptons es correcta, es solo una parte de la respuesta. Una versión más completa sería:

  1. Verificar si el usuario existe
  2. También verifique qué usuario utiliza para iniciar el contenedor acoplable

Si lo haces:

docker -u 0 ....

entonces aparecerá el mismo mensaje incluso si el usuario existe en el sistema host. Cambiar el valor detrás de -u a la identificación del usuario nginx resuelve este problema.


0

Versión nginx: nginx / 1.13.9 compilada por gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) compilada con OpenSSL 1.1.0g 2 de noviembre de 2017

Solo usa

user  nobody nogroup;

0

Este es el comando que funciona para mí "Scientific Linux"

adduser  --no-create-home  --system  --user-group --shell /bin/false   www

o el nombre de usuario www-datasi lo usa en su lugar

adduser  --no-create-home  --system  --user-group --shell /bin/false   www-data  

-1

Tuve el mismo problema ... Elegí el usuario "nginx" y no existía. Lo resolví reconfigurando y recompilando NGINX eligiendo uno existente.

./configure --prefix = / opt / nginx --user = myUser --group = myUsergroup

Ahora todo esta bien...


Las opciones de compilación son una forma de establecer valores predeterminados para algunas directivas. Por supuesto, no es necesario compilar nginx nuevamente para cambiarlos: los archivos de configuración sobrecargan estos valores predeterminados.
Xavier Lucas

Por supuesto, pero estamos hablando de la primera configuración / compilación ...
Jorge Luis Guacarán

¿Dónde leíste eso exactamente? La primera configuración no tiene nada que ver con la compilación por cierto.
Xavier Lucas
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.