我将nginx.conf示例复制到我的Ubuntu 12.04中(我不知道把其他conf文件放在哪里,我是一个nginx noob)。 当我尝试启动nginx时,出现以下错误:
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
这个错误是什么意思? 我该如何解决? 我发现这个post,但我的用户已经设置为www www(如果你在链接的文件中看到) 如何更改NGINX用户?
您在configuration中指定的用户www
不存在。 要么创build用户,要么select一个存在的用户。
你的其他选项(如果你不想创build一个新的用户)是用下面的代码replacenginx.conf中的用户字段:
user nobody;
虽然迈克尔汉普顿的答案是正确的,但这只是答案的一部分。 更完整的版本将是:
如果你这样做:
docker -u 0 ....
那么即使用户存在于主机系统上也会出现相同的信息。 将-u后面的值更改为用户nginx的id,然后解决这个问题。
创buildwww
用户。 在Ubuntu上,这应该使用以下命令和标志完成:
sudo adduser --system --no-create-home --shell /bin/false --group --disabled-login www
我有同样的问题…我select了“nginx”用户,它不存在。 我解决了它重新configuration和重新编译NGINXselect一个现有的。
./configure –prefix = / opt / nginx –user = myUser –group = myUsergroup
一切都好现在…