AWS Linux AMI(無料利用枠のマイクロインスタンス)でSymfony2をセットアップし、PHP-FPMとnginxを正常にセットアップしました。
私のSymfonyアプリは動作します..コマンドラインを使用してキャッシュをクリアするまで。これを行うと、/app/logs
andapp/cache/
フォルダーが所有されroot
、アプリはそのフォルダーに書き込めなくなります。
キャッシュをクリアするたびに手動でchmod 777
/chown nginx:nginx
これらのファイルを作成できますが、もっと良い方法があるはずです。
キャッシュをクリアする前にbash関数を使用してみましたが、機能しsu nginx;
ません。
キャッシュクリア前のキャッシュフォルダの前:
drwxrwxrwx 11 nginx nginx 4096 Nov 4 13:23 dev
drwxrwxrwx 10 nginx nginx 4096 Nov 4 20:39 prod
以降:
drwxrwxrwx 11 nginx nginx 4096 Nov 4 13:23 dev
drwxr-xr-x 10 root root 4096 Nov 4 20:39 prod
root
これはアプリで修正できるものですか、それとも権限が編集されないように権限を設定する方法はありますか?
編集:私が試したことにも言及する必要があります:
sudo chmod +a "nginx allow delete,write,append,file_inherit,directory_inherit" app/cache app/logs
しかし、サーバーはを認識しません+a
。
また、使用してみました:
setfacl -R -m u:nginx:rwx app/cache app/logs
これはエラーにはなりませんが、問題は修正されません。