Nginx/php-fpm umask setting Nginx/php-fpm umask setting nginx nginx

Nginx/php-fpm umask setting


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.


Taken from the other answer's linked question:

if you use systemd [i.e. Ubuntu 16.04], then edit /lib/systemd/system/php5-fpm.service
And edit chapter "Service":

[Service]UMask=0002


I managed to resolve this for myself by adding umask 0002 to /etc/init/php-fpm.conf (not /etc/init.d/php-fpm). See How to trace where php5-fpm umask settings are coming from on ubuntu for an explanation.