结论

1,在非root账户下启动时,nignx的master和worker进程的用户都将是这个账户,

2,在root账户下启动时 nignx的master进程是用户是root,worker的用户在conf已配置用户的情况下,owner是配置的用户,否则将是nobody,而且也可能导致nginx的一些文件的owner也是nobody。

问题探讨

A主机安装NFS server,共享出来某些目录给B主机使用

A主机中的配置

/usr/local/nginx/html/ *(insecure,rw,sync,no_root_squash)

B主机安装有NFS clinet 和nginx,还有其他应用

B主机挂载A主机提供的共享目录

mount -t nfs -o nolock,vers=4 10.0.0.243:/usr/local/nginx/html/ /usr/java/tomcat-7.0.92/webapps/ROOT/kjactive/appimg

B主机安装的nginx,配置文件中关于用户的配置是注释状态

#user  nobody;

进程用户如下:

root      12345      1  0 Jan17 ?        00:00:00 nginx: master process ./nginx
nobody 755782 12345 0 Jun23 ? 00:02:26 nginx: worker process
nobody 755783 12345 0 Jun23 ? 00:28:39 nginx: worker process

B主机上安装有后台应用,通过B主机上的nginx可以正常访问,然后在后台上传图片,实际存储到A主机的共享目录下,存储的图片权限是:

-rw-r----- 1 root root  21126 Jul  6 16:43 202107061643095807470.png

但是通过nginx却无法访问图片,提示:403 无权限

分析

使用root用户启动的nginx,但是nginx配置文件中关于user 的配置是注释状态,这样的情况正好对应开头的结论2。master进程的用户是root,但是worker进程用户是nobody,再联想到上传的图片权限是"-rw-r-----",那肯定就无法访问图片了。

解决办法也是根据结论2,修改nginx配置文件中关于user的配置,修改成:user root;,这样一来,master进程和worker进程的用户都是root,这样就能访问到图片了。

root      12345      1  0 Jan17 ?        00:00:00 nginx: master process ./nginx
root 605188 12345 0 16:50 ? 00:00:01 nginx: worker process
root 605189 12345 0 16:50 ? 00:00:00 nginx: worker process

最新文章

  1. Hadoop日志文件分析系统
  2. python 高阶函数与装饰器
  3. 【皇甫】☀PPT里的小玩意
  4. LeetCode Sum Root to Leaf Numbers(DFS)
  5. Oracle —— 表结构相关的SQL
  6. 如何查看电脑的链接WIFI密码
  7. Java IO5:管道流、对象流
  8. 小端存储(little Endian)大端存储(big Endian)
  9. 日志输出--C#
  10. SpringMVC:学习笔记(2)——RequestMapping及请求映射
  11. MySQL 修改最大连接数
  12. Java温故而知新-杨辉三角形
  13. Mybatis事务(二)事务隔离级别
  14. Hive元数据找回
  15. 《LINQ技术详解C#》-5.非延迟操作符
  16. xmldecoder漏洞
  17. 使用C#创建WCF服务控制台应用程序
  18. Count the Colors---zoj1610线段树
  19. 定义 S4 泛型函数
  20. 日志框架 NLog

热门文章

  1. Educational Codeforces Round 132 (C,D) 题解 cf#1709
  2. CF1703C Cypher 题解
  3. 二重循环中的break与continue
  4. 序列化和返序列化的概述和对象的序列化流ObjectOutputStream
  5. vscode problem
  6. Redis系列4:高可用之Sentinel(哨兵模式)
  7. 国产钡铼分布式IO模块如何与西门子PLC Profinet通讯
  8. Java学习 (四)基础篇 Java基础语法
  9. Synchronized锁升级原理与过程深入剖析
  10. [题解]Balance