Я пытаюсь запустить nginx от имени текущего пользователя (= ayush). Но я получаю следующую ошибку при установке user
директива:
Dec 11 22:26:13 manjaro nginx[17194]: 2015/12/11 22:26:13 [emerg] 17194#0: getgrnam("ayush") failed in /etc/nginx/nginx.conf:1
Dec 11 22:26:13 manjaro systemd[1]: nginx.service: Control process exited, code=exited status=1
мой nginx.conf:
user ayush;
worker_processes 1;
error_log /var/log/nginx/error.log;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#access_log logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
location / {
root /code/server;
autoindex on;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
}
также:
ayush@manjaro ~> whoami
ayush
В user
Директива принимает два параметра: вашего пользователя и имя вашей группы. Если вы не укажете имя группы, предполагается, что оно совпадает с вашим именем пользователя.
Ошибка связана с тем, что имя группы ayush
не существует.
Видеть этот документ для подробностей.
В MacOS имя группы - это число (используйте команду: id -g -n $ whoami или откройте Настройки MacOS -> Пользователи и группы -> Щелкните правой кнопкой мыши свою учетную запись и выберите Дополнительные параметры). Но nginx работает, только если я укажу имя группы как «персонал».
Моя конфигурация nginx:
пользователь MyUserName Staff; ...
Вам нужно указать два параметра для user
директива, ваш пользователь и имя вашей группы. Если имя группы не указано, оно будет предполагать, что оно совпадает с именем пользователя, что, по-видимому, является проблемой в вашем случае, т.е. имя вашей группы не совпадает с именем пользователя (ayush).
Чтобы увидеть свое имя пользователя, выполните следующую команду:
whoami
Чтобы увидеть название вашей группы, выполните следующую команду:
id -g -n $whoami