首页 > 代码库 > 非root用户启动nginx master process

非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