user:用于配置运行Nginx服务器的worker进程的用户和用户组。
第一个user是指令名称对应的,第二个user是指定的用户名信息,group是用户所属的组,该组可以不用设置他,如果没有指定,默认会用nohody这个属性
进入到ngnix的相关路径之后,可以使用./configure --help查看相关命令
--user=USER和--group=GROUP与我们的工作进程是相关的
如何设置user,使用vim ngnix.conf打开conf文件
打开之后,第一行就是user nobody;相关的配置
一般将配置修改之后,建议转到
cd ../sbin/
使用
./nginx -t
检验一下是否配置成功,需要注意的是使用user指令配置用户,要检测是否存在,如果系统内部不存在,就会产生报错
利用useradd可以添加制定用户
使用 ps -ef | grep nginx 查看对应nginx进程,可以查看此时的worker进程的PID是27396
使用./nginx -s reload重新加载用户信息,此时的用户信息已经变成了www
使用cd /root
mkdir html //创建文件
rm -rf html/创建一个html文件
vim index.html打开文件
只要修改root这里的路径,就可以实现跳转,跳转到指定页面
cd ../sbin/ /切换到sbin文件下
./ngnix -t // 检验语法是否正确
使用./nginx -s reload // 重启配置
修改了root中展示的页面的跳转路径,这里重新跳转页面的时候出现403的错误,403一般是权限不足的问题
解决的方法是将目录 cp -r /root/html/ ./ 复制的生成的www文件下就可以了
之后将root的路径重新设置为, /home/www/html你想要的路径
重新进入到sbin文件,检测语法是否正确
进入到/home目录下文件的用户组是www
再到root目录下看一看,这里是root权限,而使用user设置了www的用户之后,对于root的组是没有相应的权限的
总结:
设置一个用户信息"www"
user www;
创建一个用户
useradd www
修改user属性
user www
创建/root/html/index.html页面,添加如下内容
<!DOCTYPE html> <html> <head> <title>Welcome to nginx!</title> <style> body { width: 35em; margin: 0 auto; font-family: Tahoma, Verdana, Arial, sansserif; } </style> </head> <body> <h1>Welcome to nginx!</h1> <p>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.</p> <p>For online documentation and support please refer to <a href="http://nginx.org/">nginx.org</a>.<br/> Commercial support is available at <a href="http://nginx.com/">nginx.com</a>.</p> <p><em>Thank you for using nginx.</em></p> <p><em>I am WWW</em></p> </body> </html>
修改nginx.conf
location / { root /root/html; index index.html index.htm; }
测试启动访问
页面会报403拒绝访问的错误
分析原因
因为当前用户没有访问/root/html目录的权限
将文件创建到 /home/www/html/index.html ,修改配置
location / {root /home/www/html;index index.html index.htm;}
再次测试启动访问,综上所述,使用user指令可以指定启动运行工作进程的用户及用户组, 这样对于系统的权限访问控制的更加精细,也更加安全。