Nginx/php-fpm umask setting

nginx, permissions, php, ubuntu

Solution

Thanks to Blossoming_Flower's answer and an answer on unix.stackechange...

The best way seems to do as Blossoming _Flower says, but do it with an override file instead of editing a system file that may get replaced by a reinstall/upgrade by your distribution.

To do this you do (I'm on php 7.0 but adjust for your version)

systemctl edit php7.0-fpm.service

which will automatically create (or edit if already exists) a file at `/etc/systemd/system/php7.0-fpm.service.d/override.conf`.

You can put Blossoming_Flower's suggested content on its own in that file. Systemd will then overwrite the distribution's settings with this one, in effect adding a umask setting.

Then just `systemctl daemon-reload && systemctl restart php7.0-fpm` and you're done.

Problem

When I was using apache2 server, setting default `umask` in /etc/apache2/envvars to `0002` used to solve all my permissions problems. Now that I am trying to setup nginx/php-fpm, I have come across the same problems when files are created with improper permissions. Is there `umask` setting in nginx or php-fpm?

Original source

Related problems