Skopiowałem próbkę nginx.conf na moje urządzenie Ubuntu 12.04 (nie wiem, gdzie umieścić inne pliki conf. Jestem nginx noob). Kiedy próbuję uruchomić nginx, pojawia się następujący błąd:
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
Co oznacza ten błąd? Jak mogę to naprawić? Znalazłem ten post, ale mój użytkownik jest już ustawiony na www www (jeśli widzisz w połączonym pliku) Jak zmienić użytkownika NGINX?
linux
nginx
web-server
bernie2436
źródło
źródło
Odpowiedzi:
Użytkownik określony w konfiguracji
www
nie istnieje. Utwórz użytkownika lub wybierz istniejącego użytkownika.źródło
Inną opcją (jeśli nie chcesz tworzyć nowego użytkownika) jest zastąpienie pola użytkownika w nginx.conf przez:
źródło
Utwórz
www
użytkownika. W systemie Ubuntu należy to zrobić za pomocą następującego polecenia i flag:źródło
Chociaż odpowiedź Michaela Hamptonsa jest poprawna, to tylko część odpowiedzi. Bardziej kompletna wersja to:
Jeśli zrobisz:
wtedy ten sam komunikat pojawi się, nawet jeśli użytkownik istnieje w systemie hosta. Zmiana wartości za -u na identyfikator użytkownika nginx rozwiązuje ten problem.
źródło
Wersja nginx: nginx / 1.13.9 zbudowany przez gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1 ~ 16.04.9) zbudowany z OpenSSL 1.1.0g 2 listopada 2017
po prostu użyj
źródło
To polecenie, które działa dla mnie „Scientific Linux”
lub nazwę użytkownika,
www-data
jeśli go użyjeszźródło
Miałem ten sam problem ... Wybrałem użytkownika „nginx” i nie istniał. Rozwiązałem to, zmieniając i ponownie kompilując NGINX wybierając istniejący.
./configure --prefix = / opt / nginx --user = myUser --group = myUsergroup
Już wszystko dobrze...
źródło