NGINX 未以配置用户身份运行

NGINX 未以配置用户身份运行

这本身不是 Joomla 问题,因为我认为这更多的是与 NGINX 相关的权限问题。这是在尝试设置 Joomla 时遇到的。请阅读下文,但经过测试,我认为这更多是 NGINX 问题。

我有一个运行 NGINX 的专用主机,并将目录权限设置为 755,将现有文件权限设置为 744。我无法通过管理面板将文件上传到媒体库或创建文件夹。

某些网络根目录的权限

-rw-r--r--.  1 nginx nginx  1892 Dec 29 11:21 configuration.php
-rw-r--r--.  1 nginx nginx  2915 Dec 24 10:51 htaccess.txt
drwxr-xr-x.  5 nginx nginx  4096 Dec 30 11:33 images
drwxr-xr-x.  2 nginx nginx    61 Dec 24 10:51 includes

如您所见,nginx 是文件夹 images 的所有者。在我的/etc/nginx/nginx.conf文件中,有以下行:

user nginx;

因此 Joomla 应该以对目录图像具有写入权限的用户身份运行。我显然错过了一些东西......


为了进行测试,我将权限更改为 777,并且能够创建一个目录。令我惊讶的是......

drwxr-xr-x. 2 apache apache   23 Dec 30 11:46 asdf
drwxr-xr-x. 2 nginx  nginx  4096 Dec 24 10:51 banners
drwxr-xr-x. 2 nginx  nginx   104 Dec 24 10:51 headers

为什么我安装了 NGINX 后却出现了 apache 用户?我问为我托管该网站的朋友是否安装了 Apache,他说没有。无论如何我跑了这个但什么也没得到

sudo yum list installed | grep apache

答案1

看起来像一个小橡皮鸭调试帮我解决了这个问题。我检查了

ps aux | grep apache

并发现 php-fpm 池实际上配置为以 apache 运行。快速研究让我回到这里如何将 php-fpm 的用户设置为 php-user 而不是 www-data?。使用该信息,我可以编辑 /etc/php-fpm.d/ 中的 www.conf 文件

user = nginx
group = nginx

快速更改并重新启动 php-fpm 服务,我就恢复正常了。

相关内容