構成情報
- 環境変数の種類
- 現在の環境の確認
- デバッグ ページで環境変数を非表示にする
- メンテナンス モードの代替方法
- ##
- # #環境設定の取得
構成
Laravel フレームワークのすべての設定ファイルは、config
ディレクトリに保存されます。各オプションについて説明されており、いつでもこれらのファイルを確認して、利用可能な構成オプションを把握することができます。.env.example
ファイルが含まれます。 Laravel が Composer を通じてインストールされている場合、このファイルの名前は自動的に.env に変更されます。それ以外の場合は、ファイル名を手動で変更する必要があります。
.env
チームとして開発している場合でも、アプリケーションに
.env.example
--env=testing オプションを使用して Artisan コマンドを実行するときに、
.env を上書きする .env.testing
ファイルを作成することもできます。ファイル内の値。 {ヒント}
.env
.env
ファイル内のすべての変数は文字列として解析されるため、一部の変数は文字列として解析されます。予約値は、
env() 関数からより多くの種類の変数を返せるようにするために作成されました: スペースを含む値を使用して環境変数を定義する必要がある場合は、値を二重引用符で囲むことで定義できます。 アプリケーションがリクエストを受信すると、 アプリケーションの現在の環境は、 パラメータを {tip} アプリケーションの現在の環境は、サーバー レベルの APP_DEBUG $_ENV config config config:cache## を使用してすべての構成ファイルをキャッシュする必要があります。 # 単一のファイルにまとめます。これにより、アプリケーション内のすべての構成オプションが 1 つのファイルに結合され、フレームワークによってすぐにロードされます。 一般的には、通常の実稼働環境のデプロイメントの一環として {note} デプロイ中に MaintenanceModeException down down allow up resources/views/errors/503 を変更することで、デフォルトのメンテナンス モード テンプレートをカスタマイズできます。 Blade.php.env
值env()
值##true (ブール値) true (true) (ブール値) true false (ブール) false (偽) # #empty(ブール) false (空)(文字列) '' (文字列) '' #null (null) null (null) (null) null APP_NAME="我的 应用"
環境設定の取得
.env
ファイルにリストされているすべての項目が取得されます。変数は、PHP のスーパー グローバル変数 $ _ENV
にロードされます。 env
関数を使用して、これらの変数の値を取得できます。実際、Laravel の設定ファイルを見ると、いくつかのオプションがすでにこの関数を使用していることがわかります: 'debug' => env('APP_DEBUG', false),
env
関数に渡される 2 番目の値は "デフォルト" 値です。 。指定されたキーに環境変数が存在しない場合は、この値が使用されます。 現在の環境を決定する
.env
の APP_ENV に渡されます。ファイル
変数が決定されました。この値には、App
ファサードの environment
メソッドを通じてアクセスできます。 $environment = App::environment();
environment
メソッドに渡して確認することもできます。現在の環境構成が指定された値と一致するかどうか。このメソッドは、指定された値と一致する場合に true
を返します: if (App::environment('local')) {
// 当前环境是 local
}
if (App::environment(['local', 'staging'])) {
// 当前的环境是 local 或 staging...
}
デバッグ ページで環境変数を非表示にする例外がキャッチされず、APP_ENV# によって検出できます。 # #環境変数のカバレッジ。これは、同じアプリケーションに対して異なる環境を構成する場合に便利で、サーバー構成内の特定のホストに一致するように特定の環境を設定できます。
環境が表示される場合変数が
true の場合、デバッグ ページにはすべての環境変数と内容が表示されます。場合によっては、特定の変数を非表示にしたい場合があります。これを行うには、
config/app.php 構成ファイルで
debug_blacklist オプションを設定します。
変数と
$_SERVER 変数をブラックリストに追加する必要がある場合があります。
return [
// ...
'debug_blacklist' => [
'_ENV' => [
'APP_KEY',
'DB_PASSWORD',
],
'_SERVER' => [
'APP_KEY',
'DB_PASSWORD',
],
'_POST' => [
'password',
],
],
];
アクセス構成値グローバル 関数を使用すると、アプリケーション内のどこからでも構成値に簡単にアクセスできます。構成値には、アクセスするファイルの名前とオプションを含む「ドット」構文を使用してアクセスできます。構成オプションが存在しない場合に返されるデフォルト値を指定することもできます。
$value = config('app.timezone');
実行時に構成値を設定するには、配列を 関数
に渡します。 config(['app.timezone' => 'America/Chicago']);
構成キャッシュアプリケーションの速度を向上させるには、Artisan コマンド php Artisan config:cache
コマンドを実行する必要があります。アプリケーション開発中に構成オプションを変更する必要が生じることが多いため、このコマンドはローカル開発環境では実行しないでください。
#メンテナンス モードアプリケーションがメンテナンス モードの場合、アプリケーションへのすべてのリクエストはカスタム ビューとして表示されます。これにより、更新またはメンテナンスの実行時にアプリケーションを簡単に「シャットダウン」できます。メンテナンス モード チェックは、アプリケーションのデフォルトのミドルウェア スタックに含まれています。アプリケーションがメンテナンス モードの場合、ステータス コード 503 の config:cache
コマンドを実行する場合は、設定ファイル内からのみ env
関数を呼び出すようにしてください。 。構成がキャッシュされると、.env
ファイルはロードされなくなり、env
関数へのすべての呼び出しは null
を返します。 例外がスローされます。
コマンドを実行するだけです:
php artisan down
コマンド メッセージに
を指定することもできます および
retry オプション。
message オプションの値はカスタム メッセージを表示または記録するために使用でき、
retry の値は
Retry-After の値を設定するために使用できます。 HTTP 要求ヘッダー内:
php artisan down --message="Upgrading Database" --retry=60
メンテナンス モードでも、コマンド オプションを使用して、特定の IP アドレスまたはネットワークにアプリケーションへのアクセスを許可できます:
php artisan down --allow=127.0.0.1 --allow=192.168.0.0/16
Toメンテナンス モードをオフにするには、 コマンドを使用します。
php artisan up
{tip}
メンテナンス モードとキューアプリケーションがメンテナンス モードの場合、キュー タスクは処理されません。これらのタスクは、アプリケーションがメンテナンス モードを終了した後も処理され続けます。 メンテナンス モードの代替手段メンテナンス モードでは、アプリケーションに数秒のダウンタイム (無応答) が発生する可能性があるため、Laravel ダウンタイム デプロイメントをゼロにするために Envoyer などの代替手段を使用することを検討してもよいでしょう。 。 この記事は、 テンプレート ファイル。