getpwnam ("www") non riuscito in /etc/nginx/nginx.conf


24

Ho copiato l' esempio nginx.conf sulla mia casella Ubuntu 12.04 (non so dove mettere gli altri file conf. Sono un nobx noob). Quando provo ad avviare nginx ricevo il seguente errore:

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

Cosa significa questo errore? Come posso ripararlo? Ho trovato questo post ma il mio utente è già impostato su www www (se vedi nel file collegato) Come posso cambiare l'utente NGINX?


Il collegamento a nginx.config è interrotto
Josh Noe

Risposte:



8

L'altra opzione (se non si desidera creare un nuovo utente) è quella di sostituire il campo utente in nginx.conf con:

user nobody;

3

Crea l' wwwutente. Su Ubuntu questo dovrebbe essere fatto usando i seguenti comandi e flag:

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

0

Mentre la risposta di Michael Hamptons è corretta, è solo una parte della risposta. Una versione più completa sarebbe:

  1. Controlla se l'utente esiste
  2. Controlla anche quale utente usi per avviare il contenitore finestra mobile

Se fate:

docker -u 0 ....

quindi verrà visualizzato lo stesso messaggio anche se l'utente esiste sul sistema host. La modifica del valore dietro -u all'id dell'utente nginx risolve quindi questo problema.


0

versione nginx: nginx / 1.13.9 creato da gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) creato con OpenSSL 1.1.0g 2 nov 2017

basta usare

user  nobody nogroup;

0

Questo è il comando che funziona per me "Scientific Linux"

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

o il nome utente www-datase lo usi invece

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

-1

Ho avuto lo stesso problema ... Ho scelto l'utente "nginx" e non esisteva. L'ho risolto riconfigurando e ricompilando NGINX scegliendone uno esistente.

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

Adesso va tutto bene ...


Le opzioni di compilazione sono un modo per impostare i valori predefiniti per alcune direttive. Naturalmente non è necessario compilare nuovamente nginx per modificarli: questi valori predefiniti sono sovraccaricati dai file di configurazione.
Xavier Lucas,

Certo, ma stiamo parlando della prima volta confguration / compilation ...
Jorge Luis Guacarán,

Dove l'hai letto esattamente? La prima configurazione non ha nulla a che fare con la compilazione tra l'altro.
Xavier Lucas,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.