メンテナンスモードに関する備忘録です。参考になれば幸いです。

まずは、メンテナンスモードにするには

php artisan down
 
ブラウザには、このように表示されます。
 
解除は
php artisan up
 
メンテナンスモード中でも、自分だけは変更を確認したいですね。
php artisan down --secret="password"
とすれば、https://ドメイン/password
で表示出ます。
ipアドレスで許可することもできます。
php artisan down --allow=***.***.***.***
メンテナンス中であることを示す画面を自作するなら、例えば
{{-- resources/views/errors/503.blade.php --}}
<!DOCTYPE html>
<html lang="ja">
<head>
    <meta charset="UTF-8">
    <title>メンテナンス中</title>
    <link href="https://fonts.bunny.net/css?family=
figtree:400,500,600&display=swap" rel="stylesheet" />
    <style>
        body { font-family: 'Figtree', sans-serif; background:
#f3f3f3; text-align: center; padding: 5em; }
        h1 { font-size: 2em; color: #333; }
        p { color: #666; }
    </style>
</head>
<body>
    <h1>メンテナンス中です</h1>
    <p>しばらくお待ちください。</p>
</body>
</html>
 
とすれば、自由にデザインできます。
コマンドは
php artisan down --render="errors::503"
 
最後に、自分自身はパスワードやIPアドレスで許可されていると、実際にメンテナンスモード
なのか通常稼働しているのかわかりません。
そこで、次のコマンドが役に立ちます。
php artisan downを実行すると、storage/framework/downというファイルが作成されます。
これを利用して
test -f storage/framework/down && echo "メンテナンス中" || echo "通常稼働中"
とすれば、
「メンテナンス中」あるいは「通常稼働中」かが確認できます。