config:clear — 設定キャッシュをクリアするコマンド

未分類

Laravel Artisan config:clear

概要

Laravel の設定キャッシュを削除して、config/*.php.env の変更を即座に反映させるコマンドです。

  • カテゴリ: artisan
  • 対象: Laravel 12 / PHP 8.4
  • 関連: config:cachecache:clear

TL;DR

php artisan config:clear

設定キャッシュが bootstrap/cache/config.php から削除され、以降のリクエストで設定ファイルを再読み込みします。
キャッシュが無い場合は何も起きません。


詳細

Laravel では php artisan config:cachebootstrap/cache/config.php を生成し、アプリ起動時に設定を高速にロードします。
設定ファイルや .env を変更した場合は キャッシュをクリア してから再キャッシュするか、開発環境でそのまま動かします。


シグネチャ

php artisan config:clear [options]
オプション 必須 デフォルト 説明
--env=ENV string 現在の APP_ENV 指定した環境のキャッシュを削除
--no-interaction flag 対話なしで実行
--quiet flag 出力を抑制
  • 戻り値void
  • 例外RuntimeException(削除失敗時)

使用例

最小例

php artisan config:clear

実務例(CI/CD で設定更新後)

# 1. 設定変更
git pull origin main

# 2. キャッシュをクリア
php artisan config:clear

# 3. 再キャッシュ(本番は必須)
php artisan config:cache

よくある落とし穴

状況 原因 対策
ファイルが削除されない bootstrap/cache の書き込み権限不足 chmod 775 bootstrap/cachechown -R www-data
コマンド実行時にエラーが出る キャッシュが無いのに RuntimeException 既に無ければそのまま無視、エラー抑制
環境が異なる --env を忘れた 本番/開発で切り替える際は必ず --env=production 等を指定

代替・関連コマンド

コマンド 役割 選択ポイント
config:cache 設定キャッシュを生成 本番環境で高速化が必要
config:clear 設定キャッシュを削除 設定変更直後、開発時
config:store データベースへ設定保存 マルチテナント等で中央管理が必要

実務パターン

  1. 設定変更 → 2. config:clear → 3. config:cache
    (開発環境は 2. のみで十分)

テスト例(Pest)

use Illuminate\Support\Facades\File;

it('removes the config cache file', function () {
    // まずキャッシュを生成
    $this->artisan('config:cache');

    // キャッシュが存在することを確認
    expect(File::exists(base_path('bootstrap/cache/config.php')))->toBeTrue();

    // キャッシュをクリア
    $this->artisan('config:clear');

    // 削除されたことを確認
    expect(File::exists(base_path('bootstrap/cache/config.php')))->toBeFalse();
});

エラー別トラブルシュート

エラー 発生原因 解決策
RuntimeException: Could not remove config cache file. 書き込み権限がない chmod 775 bootstrap/cache / chown -R www-data
No such file or directory(キャッシュ無し) キャッシュファイルが存在しない config:cache で再作成後、再度実行
Permission denied サーバの SELinux/AppArmor がブロック ポリシー調整または権限付与

参考リンク


レン (Wren)

こんにちは。レンです。

Laravelのコードの森に住んでいる、小さな案内役です。
ルーティングの枝やクラスの影を歩きながら、コードの流れや仕組みを眺めています。

このサイトでは、Laravelの基本から実装のコツまで、開発で役立つポイントを静かに整理しています。
難しいことを増やすのではなく、コードの見通しが少し良くなるヒントを届けるのが役目です。

「この処理はどこに書くのがいいのか」
「Laravelではどう考えると整理できるのか」

そんな疑問に、小さなメモを残すような気持ちで記事を書いています。

コードを書いている途中で迷ったとき、
このサイトが少し立ち止まって整理できる場所になればうれしいです。

レン (Wren)をフォローする