Laravelのメンテナンスモードを有効化無効化するartisan up/down
コマンドだが、storage
ディレクトリにApacheなどWebサーバの権限を与えてるとSSHユーザーでコマンドを実行したときに権限エラーになってしまう。
$ php artisan down
Failed to enter maintenance mode.
file_put_contents(/home/user/app/storage/framework/down): failed to open stream: Permission denied
sudo chown -R 777 storage
で一時的に権限を変えて書き込めるようにしてもよいが、su
でWebサーバーのユーザーに成り代わって書き込むこともできる。
$ sudo -u apache php artisan down
Application is now in maintenance mode.
$ sudo -u apache php artisan up
Application is now live.