getpwnam ("www") gagal di /etc/nginx/nginx.conf


24

Saya menyalin sampel nginx.conf ke kotak ubuntu 12.04 saya (saya tidak tahu di mana harus meletakkan file conf lainnya. Saya seorang nogin nginx). Ketika saya mencoba memulai nginx saya mendapatkan kesalahan berikut:

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

Apa artinya kesalahan ini? Bagaimana saya bisa memperbaikinya? Saya menemukan posting ini tetapi pengguna saya sudah diatur ke www www (jika Anda melihat di file tertaut) Bagaimana cara mengubah pengguna NGINX?


Tautan ke nginx.config rusak
Josh Noe

Jawaban:



8

Opsi Anda yang lain (jika Anda tidak ingin membuat pengguna baru) adalah mengganti bidang pengguna di nginx.conf dengan:

user nobody;

3

Buat wwwpengguna. Di Ubuntu ini harus dilakukan dengan menggunakan perintah dan flag berikut:

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

0

Sementara jawaban Michael Hamptons benar, itu hanya bagian dari jawabannya. Versi yang lebih lengkap adalah:

  1. Periksa apakah pengguna ada
  2. Periksa juga pengguna mana yang Anda gunakan untuk memulai wadah buruh pelabuhan

Jika kamu melakukan:

docker -u 0 ....

maka pesan yang sama akan muncul bahkan jika pengguna ada di sistem host. Mengubah nilai di belakang -u ke id pengguna nginx kemudian menyelesaikan masalah ini.


0

versi nginx: nginx / 1.13.9 dibangun oleh gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) dibangun dengan OpenSSL 1.1.0g 2 Nov 2017

gunakan saja

user  nobody nogroup;

0

Ini adalah perintah yang berfungsi untuk saya "Scientific Linux"

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

atau nama pengguna www-datajika Anda menggunakannya

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

-1

Saya memiliki masalah yang sama ... Saya memilih pengguna "nginx" dan itu tidak ada. Saya memecahkannya mengkonfigurasi ulang dan mengkompilasi ulang NGINX memilih yang sudah ada.

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

Semuanya baik-baik saja sekarang ...


Opsi kompilasi adalah cara untuk menetapkan nilai default untuk beberapa arahan. Tentu saja tidak perlu mengkompilasi nginx lagi untuk mengubahnya: nilai-nilai default ini kelebihan beban oleh file konfigurasi.
Xavier Lucas

Tentu saja, tetapi kita sedang berbicara tentang konfigurasi / kompilasi pertama kali ...
Jorge Luis Guacarán

Di mana tepatnya Anda membaca itu? Konfigurasi pertama tidak ada hubungannya dengan kompilasi btw.
Xavier Lucas
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.