現在のユーザー(= ayush)としてnginxを実行しようとしています。しかし、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
ディレクティブは、ユーザー名とグループ名の2つのパラメーターを取ります。グループ名を指定しない場合、ユーザー名と同じであると見なされます。
エラーは、グループ名ayush
が存在しないためです。
詳細は このドキュメント を参照してください。
MacOSでは、グループ名は数字です(コマンド:id -g -n $ whoamiを使用するか、MacOS設定->ユーザーとグループ->アカウントを右クリックして[詳細オプション]を選択します)。しかし、nginxは、グループ名を「スタッフ」として指定した場合にのみ機能します。
私のnginx設定:
ユーザーMyUserNameスタッフ。 ...
user
ディレクティブには、ユーザー名とグループ名の2つのパラメーターを指定する必要があります。グループ名が指定されていない場合、それはユーザーと同じであると想定されます。これは、あなたの場合に問題のようです。つまり、グループ名がuser(ayush)と同じではありません。
ユーザー名を確認するには、次のコマンドを実行します。
whoami
グループ名を確認するには、次のコマンドを実行します。
id -g -n $whoami