Documentation Index
Fetch the complete documentation index at: https://kawax.biz/llms.txt
Use this file to discover all available pages before exploring further.
はじめに
Laravelフレームワークの設定ファイルはすべてconfig/ ディレクトリに格納されています。各オプションにはコメントが付いているので、ファイルを開いて利用可能なオプションを確認してみてください。
設定ファイルでは、データベース接続情報・メールサーバー情報・アプリケーションURLや暗号化キーなど、さまざまなコア設定値を管理します。
about コマンド
about Artisanコマンドを使うと、アプリケーションの設定・ドライバー・環境の概要を確認できます。
--only オプションを使います。
config:show コマンドが便利です。
環境設定(.env)
実行環境によって設定値を切り替えたい場合がよくあります。たとえば、ローカルと本番でキャッシュドライバーを変えたいケースなどです。 Laravelはこれを簡単にするために DotEnv PHPライブラリを利用しています。新規インストール時、アプリケーションのルートディレクトリには一般的な環境変数が定義された.env.example ファイルが含まれており、インストールプロセス中に自動的に .env にコピーされます。
チームで開発する場合は、
.env.example ファイルを更新しながらリポジトリに含めておくと便利です。プレースホルダー値を設定しておくことで、チームの他の開発者がどの環境変数が必要かを明確に把握できます。環境ファイルのセキュリティ
ただし、Laravelには環境ファイルを暗号化する機能が組み込まれており、暗号化された状態であればソースコントロールに安全に保存できます。追加の環境ファイル
アプリケーション起動時、LaravelはAPP_ENV 環境変数またはCLIの --env 引数が指定されているかを確認します。指定されている場合、.env.[APP_ENV] ファイルが存在すればそれを読み込みます。存在しない場合はデフォルトの .env ファイルが使われます。
環境変数の型
.env ファイルの変数はすべて文字列として解析されますが、env() 関数からより幅広い型を返せるよう、以下の特殊な値が用意されています。
.env の値 | env() の返り値 |
|---|---|
true | (bool) true |
(true) | (bool) true |
false | (bool) false |
(false) | (bool) false |
empty | (string) '' |
(empty) | (string) '' |
null | (null) null |
(null) | (null) null |
環境変数の取得
.env ファイルに記述したすべての変数は、リクエストを受け取ったとき $_ENV PHPスーパーグローバルに読み込まれます。設定ファイル内では env() 関数を使って値を取得できます。
現在の環境を確認する
現在の環境は.env ファイルの APP_ENV 変数で決まります。App ファサードの environment メソッドで取得できます。
環境ファイルの暗号化
暗号化されていない環境ファイルはソースコントロールに保存すべきではありませんが、Laravelには環境ファイルを暗号化する機能があります。.env が暗号化され、暗号化された内容が .env.encrypted ファイルに保存されます。復号キーはコマンドの出力に表示されるので、安全なパスワードマネージャーに保存してください。
復号するには env:decrypt コマンドを使います。
設定値へのアクセス
Config ファサードまたはグローバルの config() 関数を使って、アプリケーションのどこからでも設定値にアクセスできます。「ドット記法」を使い、ファイル名とオプション名を組み合わせて指定します。
Config::set() または配列を config() に渡します。
設定のキャッシュ
アプリケーションのパフォーマンスを向上させるには、すべての設定ファイルを1つのファイルにキャッシュします。.env ファイルはフレームワークのリクエストやArtisanコマンド実行時に読み込まれなくなります。そのため env() 関数はシステムレベルの環境変数のみを返します。
キャッシュを削除するには config:clear コマンドを使います。
設定ファイルの公開
Laravelの設定ファイルの多くはすでにconfig/ ディレクトリに公開されていますが、cors.php や view.php など一部のファイルはデフォルトでは公開されていません。
未公開の設定ファイルを公開するには config:publish コマンドを使います。
デバッグモード
config/app.php の debug オプションは、エラー情報をユーザーにどの程度表示するかを決定します。このオプションはデフォルトで .env ファイルの APP_DEBUG 環境変数の値に従います。
メンテナンスモード
アプリケーションがメンテナンスモードのとき、すべてのリクエストに対してカスタムビューが表示されます。これにより、アップデート中や保守作業中にアプリケーションを一時的に「無効化」できます。メンテナンスモードの有効化
--refresh オプションを指定すると、ブラウザが指定秒数後に自動的にリロードされます。
--retry オプションは Retry-After HTTPヘッダーの値として設定されます。
メンテナンスモードのバイパス
シークレットトークンを使って特定のユーザーだけがアクセスできるようにするには--secret オプションを使います。
--with-secret オプションを使うとLaravelがトークンを自動生成します。
複数サーバーでのメンテナンスモード
デフォルトではLaravelはファイルベースでメンテナンスモードを管理します。複数サーバー構成の場合は、キャッシュベースの方法が便利です。メンテナンスビューの事前レンダリング
デプロイ中にphp artisan down を実行する場合、依存関係更新中にアクセスしたユーザーがエラーを目にすることがあります。これを防ぐには --render オプションでビューを事前レンダリングします。
メンテナンスモードの無効化
メンテナンスモードのデフォルトテンプレートは
resources/views/errors/503.blade.php を作成することでカスタマイズできます。次のステップ
ルーティング
URLとコントローラーを結びつけるルーティングの基礎を学びます。