O getpwnam (“www”) falhou no /etc/nginx/nginx.conf


24

Copiei o exemplo nginx.conf na minha caixa do ubuntu 12.04 (não sei onde colocar os outros arquivos conf. Sou um nginx noob). Quando tento iniciar o nginx, recebo o seguinte erro:

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

O que esse erro significa? Como posso corrigir isso? Encontrei esta postagem, mas meu usuário já está definido como www www (se você vir no arquivo vinculado) Como altero o usuário do NGINX?


Link para nginx.config está quebrado
Josh Noe

Respostas:



8

Sua outra opção (se você não deseja criar um novo usuário) é substituir o campo do usuário no nginx.conf por:

user nobody;

3

Crie o wwwusuário. No Ubuntu, isso deve ser feito usando o seguinte comando e sinalizadores:

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

0

Enquanto a resposta de Michael Hamptons está correta, é apenas parte da resposta. Uma versão mais completa seria:

  1. Verifique se o usuário existe
  2. Verifique também qual usuário você usa para iniciar o contêiner do docker

Se você fizer:

docker -u 0 ....

a mesma mensagem será exibida mesmo se o usuário existir no sistema host. Alterar o valor por trás de -u para o ID do usuário nginx resolve esse problema.


0

Versão do nginx: nginx / 1.13.9 compilado pelo gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) compilado com o OpenSSL 1.1.0g 2 de novembro de 2017

Apenas use

user  nobody nogroup;

0

Este é o comando que funciona para mim "Scientific Linux"

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

ou o nome de usuário, www-datase você usá-lo

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

-1

Eu tive o mesmo problema ... escolhi o usuário "nginx" e ele não existia. Eu o resolvi reconfigurando e recompilando o NGINX escolhendo um já existente.

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

Tudo está bem agora...


As opções de compilação são uma maneira de definir valores padrão para algumas diretivas. Obviamente, não é necessário compilar o nginx novamente para alterar isso: esses valores padrão estão sobrecarregados pelos arquivos de configuração.
Xavier Lucas

Claro, mas estamos falando sobre a primeira vez confguração / compilação ...
Jorge Luis Guacarán

Onde você leu exatamente? A primeira configuração não tem nada a ver com a compilação btw.
Xavier Lucas
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.