質問: ディレクトリの権限設定について、いくつか記事を読んだのですが、上手く設定ができず困っております。正しい設定をご教示頂ければ幸甚です。 1) やりたいこと 特定のディレクトリ下に、PHPでmkdir()したい。 2) エラー状況 PHP Warning: mkdir(): Permission denied 3) 現在の設定状況 ・ PHPがディレクトリを作成しようとする親ディレクトリの権限は775 ・ 親ディレクトリのgroupはnginx(所有者は自分) ・ php-fpmのuser/groupはnginx 4) その他の設定状況 OS : LINUX PHP : 7.0.30 Webサーバー : nginx/1.12.1
回答: オーナーユーザー&グループを変えずに許可するにはパーミッションを777にする、 nginxのグループに変更できればパーミッションは775 nginxと同じユーザーに変更できればパーミッションは755 となるのでは? ターゲットパスが /deep/path/to/target の場合に、途中の /deep /deep/path /deep/path/to に読み取り権限がなかったりするとアクセスできなかったりします。 あとは、SELinuxで遮断されている可能性も考慮しないと。 使いこなしについては: SELinux を使おう.使ってくれ. - Qiita