env.php リファレンス
- トピック:
- 設定
作成対象:
- 経験者
- 管理者
- 開発者
env.php
ファイルには、次のセクションが含まれます。
名前 | 説明 |
---|---|
backend | 管理領域の設定 |
cache | redis ページとデフォルトキャッシュの設定 |
cache_types | キャッシュストレージ設定 |
consumers_wait_for_messages | コンシューマーがメッセージキューからのメッセージを処理する方法を設定します |
cron | cron ジョブを有効または無効にする |
crypt | 暗号化機能の暗号化キー |
db | データベース接続設定 |
default_connection | メッセージキューのデフォルト接続 |
directories | Commerce ディレクトリのマッピング設定 |
downloadable_domains | ダウンロード可能なドメインのリスト |
install | インストールの日付 |
lock | プロバイダ設定のロック |
MAGE_MODE | アプリケーションモード |
queue | メッセージキュー設定 |
resource | リソース名の接続へのマッピング |
session | セッションストレージデータ |
system | 管理者で編集するフィールドを無効にします |
x-frame-options | [x-frame-options][x-frame-options] の設定 |
バックエンド
env.php の backend
ノードを使用して、Commerceの管理者 URL の frontName を設定します。
'backend' => [
'frontName' => 'admin'
]
キャッシュ
env.php
ファイルのノードを使用して、redis ページとデフォルト cache
キャッシュを設定します。
'cache' => [
'frontend' => [
'default' => [
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis',
'backend_options' => [
'server' => '127.0.0.1',
'database' => '0',
'port' => '6379'
],
],
'page_cache' => [
'backend' => 'Magento\\Framework\\Cache\\Backend\\Redis',
'backend_options' => [
'server' => '127.0.0.1',
'port' => '6379',
'database' => '1',
'compress_data' => '0'
]
]
]
]
詳しくは、Redis 設定を参照してください。
cache_type
このノードからは、すべてのキャッシュタイプ設定を使用できます。
'cache_types' => [
'config' => 1,
'layout' => 1,
'block_html' => 1,
'collections' => 1,
'reflection' => 1,
'db_ddl' => 1,
'compiled_config' => 1,
'eav' => 1,
'customer_notification' => 1,
'config_integration' => 1,
'config_integration_api' => 1,
'full_page' => 1,
'config_webservice' => 1,
'translate' => 1,
'vertex' => 1
]
様々な キャッシュタイプの詳細をご覧ください。
consumers_wait_for_messages
処理されたメッセージの数が max_messages
未満の場合に、コンシューマーがメッセージのポーリングを続行するかどうかを指定します。 デフォルト値は 1
です。
'queue' => [
'consumers_wait_for_messages' => 1
]
次のオプションを使用できます。
-
1
- コンシューマは、TCP 接続を閉じてコンシューマ・プロセスを終了する前に、メッセージ・キューからメッセージの処理をenv.php
ファイルで指定されたmax_messages
値に達するまで続行します。 キューがmax_messages
値に達する前に空になった場合、コンシューマーは到着するメッセージがさらに届くのを待ちます。この設定は大規模なマーチャントにお勧めです。メッセージフローが常に発生することが予想され、処理の遅延は望ましくないからです。
-
0
- コンシューマーはキュー内の使用可能なメッセージを処理し、TCP 接続を閉じて終了します。 コンシューマーは、処理されたメッセージの数がenv.php
ファイルで指定されたmax_messages
値より少ない場合でも、追加のメッセージがキューに入るのを待ちません。 これにより、メッセージキューの処理に長い遅延が発生することによる cron ジョブの問題を防ぐことができます。この設定は、メッセージ フローが常に発生するとは限らない小規模なマーチャントに推奨されます。この場合、数日間メッセージが送信されない可能性がある場合は、小規模な処理の遅延と引き換えに、コンピューティング リソースを節約することをお勧めします。
cron
Commerce アプリケーションの cron ジョブを有効または無効にします。 デフォルトでは、cron ジョブが有効になっています。 無効にするには、env.php
ファイルに cron
設定を追加し、値を 0
に設定します。
'cron' => [
'enabled' => 0
]
詳しくは、Cron を参照してください。
陰窩
Commerceでは、パスワードやその他の機密データを保護するために暗号化キーを使用します。 このキーは、インストールプロセス中に生成されます。
'crypt' => [
'key' => '63d409380ccb1182bfb27c231b732f05'
]
'db' => [
'table_prefix' => '',
'connection' => [
'default' => [
'host' => 'localhost',
'dbname' => 'magento_db',
'username' => 'root',
'password' => 'admin123',
'model' => 'mysql4',
'engine' => 'innodb',
'initStatements' => 'SET NAMES utf8;',
'active' => '1'
]
]
]
default_connection
メッセージキューのデフォルト接続を定義します。 値には、db
、amqp
、または redismq
などのカスタムキューシステムを指定できます。 db
以外の値を指定する場合は、最初にメッセージキューソフトウェアをインストールして設定する必要があります。 そうしないと、メッセージは正しく処理されません。
'queue' => [
'default_connection' => 'amqp'
]
システムの env.php
ファイルで queue/default_connection
が指定されている場合、queue_topology.xml
、queue_publisher.xml
、または queue_consumer.xml
ファイルで特定の接続が定義されていない限り、この接続はシステムを通じてすべてのメッセージキューで使用されます。
例えば、env.php
に queue/default_connection
が amqp
まれているのに、モジュールのキュー設定 XML ファイルで db
接続が指定されている場合、モジュールは MySQL をメッセージブローカーとして使用します。
ディレクトリ
Web サーバーが /pub
ディレクトリからCommerce アプリケーションを提供するように設定されている場合に設定する必要があるオプションのディレクトリマッピングオプション セキュリティの向上。
'directories' => [
'document_root_is_pub' => true
]
downloadable_domains
このノードで利用できるダウンロード可能なドメインのリスト。 追加のドメインは、CLI コマンドを使用して追加、削除、一覧表示できます。
'downloadable_domains' => [
'local.vanilla.com'
]
'install' => [
'date' => 'Tue, 23 Apr 2019 09:31:07 +0000'
]
'MAGE_MODE' => 'developer'
'queue' => [
'topics' => [
'customer.created' => [publisher="default-rabitmq"],
'order.created' => [publisher="default-rabitmq"],
]
]
'resource' => [
'default_setup' => [
'connection' => 'default'
]
]
session
セッション設定は、session
ノードに保存されます。
'session' => [
'save' => 'files'
],
'x-frame-options' => 'SAMEORIGIN'
詳しくは、x-frame-options を参照してください。
system
このノードを使用して、Commerceは env.php
ファイル内の設定値をロックし、管理者でそのフィールドを無効にします。
'system' => [
'default' => [
'web' => [
'secure' => [
'base_url' => 'https://magento.test/'
]
]
]
詳しくは、env-php-config-set を参照してください。
ファイル設定への変数の追加
オペレーティングシステム(OS)レベルの環境変数を使用して、すべての設定オプション(値を持つ変数)を設定または上書きできます。
env.php
設定は、ネストされたレベルを持つ配列に格納されます。 ネストされた配列パスを OS 環境変数の文字列に変換するには、パス内の各キーを、アンダースコアを 2 文字の __
、大文字および MAGENTO_DC_
のプレフィックスで連結します。
例えば、セッション保存ハンドラーを設定から OS 環境変数 env.php
変換します。
'session' => [
'save' => 'files'
],
__
と連結され、大文字のキーが SESSION__SAVE
になります。
次に、プレフィックスとして MAGENTO_DC_
を指定し、結果の OS 環境変数名 MAGENTO_DC_SESSION__SAVE
を取得します。
export MAGENTO_DC_SESSION__SAVE=files
別の例として、スカラー env.php
設定オプションのパスを変換します。
'x-frame-options' => 'SAMEORIGIN'
単に大文字にして MAGENTO_DC_
というプレフィックスを付けることで、最終的な OS 環境変数名 MAGENTO_DC_X-FRAME-OPTIONS
を受け取ります。
export MAGENTO_DC_X-FRAME-OPTIONS=SAMEORIGIN
env.php
OS の環境変数よりも優先されることに注意してください。変数によるファイル設定の上書き
OS 環境変数で既存の env.php
設定オプションを上書きするには、設定の配列要素を JSON エンコードし、MAGENTO_DC__OVERRIDE
OS 変数の値として設定する必要があります。
複数の設定オプションを上書きする必要がある場合は、JSON エンコーディングの前に、すべてを 1 つの配列に組み合わせます。
例えば、次の env.php
設定を上書きします。
'session' => [
'save' => 'files'
],
'x-frame-options' => 'SAMEORIGIN'
上記の配列の JSON エンコードされたテキストは、次のようになります{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}
。
次に、これを MAGENTO_DC__OVERRIDE
OS 変数の値として設定します。
export MAGENTO_DC__OVERRIDE='{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}'