Nginx: opendir() failed (13: permission denied)
This error could be due to nginx not being to access the folder. We can fix this by adding www-data/nginx as the owner of the directory and sub directory. We can give persmissions to www-data/nginx user to the directory. Also we need to add executable permission to the path of the folder.
chmod +x /home/
chmod +x /home/username
chmod +x /home/username/siterootAlso if you are using a centos 7 box, SELinux is enabled by default. We can set it to persmissive mode by using the following command.
sudo setenforce permissiveBut SELinux will be enabled again on restart.
We can fix this by
yum install -y policycoreutils-devel
grep nginx /var/log/audit/audit.log | audit2allow -M nginx
semodule -i nginx.ppAlso if you do not want to meddle with SELinux, we can run
chcon -Rt httpd_sys_content_t /home/username/siterootsudo semanage port -a -t http_port_t  -p tcp <port-number>