🍍
Laravel11 downコマンド/upコマンド
この記事は Laravel11にあるartisanコマンドを全部調べる Advent Calendar 2024 8日目の記事です。
今回はdownコマンド/upコマンドについて調べました。
環境
- PHP 8.4.1
- laravel/laravel 11.3.3
- laravel/framework 11.33.2
down
メンテナンスモードにする。
php artisan down
実行するとメンテナンスモードに切り替わります。
この状態でWebページにアクセスすると503エラーの画面が表示されます。

| オプション | 説明 |
|---|---|
--redirect[=REDIRECT] |
リダイレクトするパスを指定 |
--render[=RENDER] |
メンテナンスモード中に表示するビューを指定 |
--retry[=RETRY] |
HTTPヘッダのRetry-Afterの秒数を指定 |
--refresh[=REFRESH] |
HTTPヘッダのRefreshの秒数を指定 |
--secret[=SECRET] |
メンテナンスモードをパイパスする秘密のフレーズを指定 |
--with-secret |
メンテナンスモードをパイパスする秘密のフレーズを生成 |
--status[=STATUS] |
メンテナンスモード中のステータスコードを指定 |
-
--redirectを使うと指定のURLにリダイレクトさせることができます
php artisan down --redirect=/hoge
- リダイレクト先が同一サイト内であればメンテナンスモードの対象から除外しておく必要があります
bootstrap/app.php
->withMiddleware(function (Middleware $middleware) {
$middleware->preventRequestsDuringMaintenance(['/hoge']);
})
-
--renderを使うと任意のビューを指定できる
php artisan down --render=errors::404
-
--retryを使うとHTTPヘッダのRetry-Afterに指定した値を設定できます- この設定はクローラーに再クロールするまでの時間を指定します
-
--refreshを使うと指定した秒数後にブラウザがリロードします -
--secretを使うとメンテナンスモードをバイパスできるようにするための秘密のフレーズを指定できます
advent-calendar-2024 % php artisan down --secret=123abc
INFO Application is now in maintenance mode.
INFO You may bypass maintenance mode via [http://localhost/123abc].
-
この秘密のフレーズをつけた状態でアクセスするとメンテナンスモードバイパスクッキーが発行され、
/にリダイレクトします
以降はメンテナンスモードではない状態でアクセスができます -
--with-secretは--secretとは違いLaravelが秘密のフレーズを生成します
advent-calendar-2024 % php artisan down --with-secret
INFO Application is now in maintenance mode.
INFO You may bypass maintenance mode via [http://localhost/O8r42p7Ko6tJg0bB].
-
--statusはメンテナンスモード時のHTTPステータスコードを指定できます(デフォルトは503)
up
メンテナンスモードを解除する。
php artisan up
実行するとメンテナンスモードを解除します。
Discussion