非root用户启动nginx master process

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了非root用户启动nginx master process相关的知识,希望对你有一定的参考价值。

nginx启动进程可以在conf里指定user(user  work;)但是这个只有在用root启动的情况有意义,如果要是用非root用户比如www-data启动nginx,则需要注释掉use work;这行

/usr/sbin/nginx  -c /etc/nginx/nginx.conf  

这样

www-data  41121      1  0 19:40 ?        00:00:00 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf

www-data  41122  41121  0 19:40 ?        00:00:00 nginx: worker process                   

www-data  41123  41121  0 19:40 ?        00:00:00 nginx: worker process                   

www-data  41124  41121  0 19:40 ?        00:00:00 nginx: worker process                   

www-data  41125  41121  0 19:40 ?        00:00:00 nginx: worker process   

master process 和 worker process 的用户都是www-data


另外报错:

/usr/sbin/nginx  -c /etc/nginx/nginx.conf

nginx: [emerg] open() "/var/run/nginx.pid" failed (13: Permission denied)

解决方法:

mkdir /var/run/nginx

chown  -R www-data.www-data /var/run/nginx

修改配置文件中的配置为

pid /var/run/nginx/nginx.pid;



参考:

https://www.ait24.com/560.html

http://www.cnblogs.com/luxianghao/p/6107096.html



以上是关于非root用户启动nginx master process的主要内容,如果未能解决你的问题,请参考以下文章

非root启动80端口

Linux 普通用户启动nginx

nginx的原理

如何在普通用户下,使用nginx启动80端口

linux非root用户安装nginx

nginx启动master开启8个worker进程,每个进程可以处理多个请求,一个进程可以处理那么多请求原理了?