Artisan は、Laravel に付属するコマンドラインツールです。
php artisan <コマンド> の形で、開発から運用までの定型作業をコマンド化して実行します。
何ができるのか
| 用途 | 代表的なコマンド |
|---|---|
| 雛形生成 | make:model make:controller make:migration |
| DB操作 | migrate db:seed |
| キャッシュ | config:cache route:cache view:cache |
| 確認 | route:list about |
| 自作 | 独自コマンドを定義してcronから実行 |
php artisan list で、そのプロジェクトで使えるコマンドが全部出ます。バージョンや導入パッケージによって増減するので、記事のコマンドが無いときはまずこれを見てください。
本番でいちばん重要なのはキャッシュ系
運用で効いてくるのはここです。Laravel は設定・ルート・ビューをキャッシュでき、本番では性能のために有効化するのが一般的です。
そしてキャッシュした後は、ファイルを更新してもキャッシュを作り直すまで反映されません。「デプロイしたのに変更が出ない」の原因はたいていこれで、デプロイ手順に view:cache などを組み込んでおく必要があります。当サイトも Blade を触ったデプロイでは必ず打ち直しています。
逆に、設定ファイルをキャッシュした状態では .env の変更が効きません。環境変数を変えたら config:clear が要る、という点は覚えておいてください。
破壊的なコマンドに注意
migrate:fresh と migrate:refresh はテーブルを作り直すのでデータが消えます。本番で実行すると取り返しがつきません。
Laravel は本番環境で危険なコマンドを実行しようとすると確認を求めますが、--force を付けると素通りします。デプロイスクリプトに --force を書くときは、対象コマンドを毎回確認してください。