Nginx と php-fpm を使用して Debian 10 で実行されているサイトのキャッシュ ディレクトリに適切な権限を設定する際に問題が発生します。
私のユーザー「myuser」のホームは /var/www/mydomain.tld です。ディレクトリの構造は次のとおりです。
drwxr-x--- 2 myuser myuser 4096 Jan 3 20:24 backups/
drwxrwx---+ 4 myuser myuser 4096 Jan 5 21:10 cache/
drwxr-x---+ 2 myuser myuser 4096 Jan 5 00:00 logs/
drwxr-x--- 5 myuser myuser 4096 Jan 3 20:27 public/
このユーザーを使用するために fpm プールを設定し、myuser のグループに Nginx を追加しました。また、グループのキャッシュ ディレクトリに書き込み権限を追加して、Nginx がそこに書き込めるようにしました。最後に、ディレクトリに ACL を設定して、Nginx によって作成されたファイルへの書き込みアクセスを myuser に許可しました。
# file: var/www/domain.tld/cache
# owner: myuser
# group: myuser
user::rwx
group::rwx
other::---
default:user::rwx
default:user:myuser:rwx
default:group::rwx
default:mask::rwx
default:other::---
しかし、Nginx がいくつかのディレクトリを作成すると、myuser はそれにアクセスできません。作成されたディレクトリはデフォルトのマスクを継承せず、代わりに '---' を使用するため、ACL は機能しなくなります。
drwx------+ 3 nginx nginx 4096 Jan 6 18:55 3
drwx------+ 3 nginx nginx 4096 Jan 6 19:16 9
drwx------+ 3 nginx nginx 4096 Jan 6 18:55 d
# file: var/www/domain.tld/cache/d
# owner: nginx
# group: nginx
user::rwx
user:myuser:rwx #effective:---
group::rwx #effective:---
mask::---
other::---
default:user::rwx
default:user:myuser:rwx
default:group::rwx
default:mask::rwx
default:other::---
ここで何が欠けているのでしょうか?