0

This is not a Joomla issue per se as I think it is more of a permissions issue related to NGINX. This was encountered while trying to set up Joomla. Read below but after testing I think this is more of a NGINX issue.

I have a dedicated host running NGINX and have permissions set as 755 for directories and 744 for existing files. I am not able to upload, through the admin panel, files into the media library or make a folder.

Permissions on some of the web root

-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

As you can see nginx is the owner of the folder images. In my /etc/nginx/nginx.conf file I have the line for:

user nginx;

So Joomla should be running as that user which has write rights to the directory images. I am obviously missing something...


For testing I changed the permissions to 777 and I was able to create a directory. Much to my surprise....

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

Why is the apache user there when I have installed NGINX. I asked my friend hosting the site for me if he installed Apache and he said no. I ran this anyway and got nothing

sudo yum list installed | grep apache
Matt
  • 251
  • 4
  • 11

1 Answers1

2

It looks like a little rubber duck debugging help me address this one. I checked

ps aux | grep apache

and found out that the pool for php-fpm was actually configured to run as apache. Quick research led me back here to How do I set the user of php-fpm to be php-user instead of www-data?. Using that information I was able to edit my www.conf file in /etc/php-fpm.d/

user = nginx
group = nginx

Quick change there and a restart of the php-fpm service and I am back to normal.

Matt
  • 251
  • 4
  • 11