[PaaS uniquement]{class="badge informative" title="S’applique uniquement aux projets Adobe Commerce on Cloud (infrastructure PaaS gérée par Adobe) et aux projets On-premise."}

env.php référence

Le fichier env.php contient les sections suivantes :

Nom
Description
backend
Paramètres de la zone Admin
cache
Configuration de la page de redis et du cache par défaut
cache_types
Paramètres de stockage dans le cache
consumers_wait_for_messages
Configurer la manière dont les consommateurs et consommatrices traitent les messages de la file d’attente des messages
cron
Activation ou désactivation des tâches cron
crypt
La clé de chiffrement pour les fonctions cryptographiques
db
Paramètres de connexion à la base de données
default_connection
Connexion par défaut des files d'attente des messages
directories
Paramètres de mappage des répertoires Commerce
downloadable_domains
Liste des domaines téléchargeables
install
La date d'installation
lock
Verrouiller les paramètres du fournisseur
MAGE_MODE
Le mode d’application
queue
Files d’attente des messages paramètres
resource
Mappage du nom d’une ressource sur une connexion
session
Données de stockage de la session
system
Désactive le champ à modifier dans l’administrateur
x-frame-options
Définition de [x-frame-options][x-frame-options]

serveur principal

Configurez le frontName pour l’URL d’administration Commerce à l’aide du nœud backend dans env.php.

'backend' => [
  'frontName' => 'admin'
]

cache

Configurez la page redis et la mise en cache par défaut en utilisant cache nœud dans le fichier env.php.

'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'
            ]
        ]
    ]
]

En savoir plus dans Configuration Redis.

cache_types

Toutes les configurations de types de cache sont disponibles à partir de ce nœud.

'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
]

En savoir plus sur les différents types de cache.

consumer_wait_for_messages

Indiquez si les consommateurs doivent continuer à interroger les messages si le nombre de messages traités est inférieur à la valeur max_messages. La valeur par défaut est 1.

'queue' => [
    'consumers_wait_for_messages' => 1
]

Les options suivantes sont disponibles :

  • 1 : les clients continuent à traiter les messages de la file d'attente des messages jusqu'à ce qu'ils atteignent la valeur max_messages spécifiée dans le fichier env.php avant de fermer la connexion TCP et d'arrêter le traitement des clients. Si la file d’attente se vide avant d’atteindre la valeur max_messages, le client attend l’arrivée d’autres messages.

    Nous recommandons ce paramètre pour les grands commerçants, car un flux de messages constant est attendu et les retards de traitement ne sont pas souhaitables.

  • 0 : les consommateurs et consommatrices traitent les messages disponibles dans la file d'attente, ferment la connexion TCP et s'arrêtent. Les consommateurs et consommatrices n’attendent pas que des messages supplémentaires entrent dans la file d’attente, même si le nombre de messages traités est inférieur à la valeur max_messages spécifiée dans le fichier env.php. Cela peut permettre d’éviter les problèmes liés aux tâches cron en raison des longs délais de traitement des files d’attente des messages.

    Nous recommandons ce paramètre pour les petits commerçants qui ne s'attendent pas à un flux de messages constant et qui préfèrent conserver les ressources informatiques en échange de retards de traitement mineurs alors qu'il pourrait n'y avoir aucun message pendant des jours.

cron

Activez ou désactivez les tâches cron pour l’application Commerce. Par défaut, les tâches cron sont activées. Pour les désactiver, ajoutez la configuration cron au fichier env.php et définissez la valeur sur 0.

'cron' => [
  'enabled' => 0
]
WARNING
Soyez prudent lorsque vous désactivez les tâches cron. Lorsqu’ils sont désactivés, les processus essentiels requis par l’application Commerce ne s’exécutent pas.

En savoir plus sur Crons.

chiffrer

Commerce utilise une clé de chiffrement pour protéger les mots de passe et d’autres données sensibles. Cette clé est générée lors du processus d'installation.

'crypt' => [
  'key' => '63d409380ccb1182bfb27c231b732f05'
]

Apprenez-en davantage sur la clé de chiffrement dans le guide d’utilisation de Commerce.

db

Toutes les configurations de base de données sont disponibles dans ce nœud.

'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

Définit la connexion par défaut pour les files d’attente de messages. La valeur peut être db, amqp ou un système de file d’attente personnalisé comme redismq. Si vous spécifiez une valeur autre que db, le logiciel de file d’attente de messages doit d’abord être installé et configuré. Sinon, les messages ne seront pas traités correctement.

'queue' => [
    'default_connection' => 'amqp'
]

Si queue/default_connection est spécifié dans le fichier de env.php système, cette connexion est utilisée pour toutes les files d'attente de messages du système, sauf si une connexion spécifique est définie dans un fichier queue_topology.xml, queue_publisher.xml ou queue_consumer.xml.
Par exemple, si queue/default_connection est amqp dans env.php mais qu’une connexion db est spécifiée dans les fichiers XML de configuration de file d’attente d’un module, le module utilisera MySQL comme courtier de messages.

répertoires

Options de mappage de répertoire facultatives devant être définies lorsque le serveur web est configuré pour servir l’application Commerce à partir du répertoire /pub pour une sécurité renforcée.

'directories' => [
    'document_root_is_pub' => true
]

downloadable_domains

Liste des domaines téléchargeables disponibles dans ce nœud. D’autres domaines peuvent être ajoutés, supprimés ou répertoriés à l’aide des commandes de l’interface de ligne de commande.

'downloadable_domains' => [
    'local.vanilla.com'
]

En savoir plus sur les domaines téléchargeables.

installer

Date d’installation de l’application Commerce.

'install' => [
  'date' => 'Tue, 23 Apr 2019 09:31:07 +0000'
]

serrure

Les paramètres du fournisseur de verrous sont configurés à l’aide du nœud lock .

En savoir plus sur la configuration du fournisseur de verrouillage.

MODE_IMAGE

Le mode de déploiement peut être configuré dans ce nœud.

'MAGE_MODE' => 'developer'

En savoir plus sur les modes d’application.

file d'attente

Les configurations de file d’attente de messages sont disponibles dans ce nœud.

'queue' => [
  'topics' => [
    'customer.created' => [publisher="default-rabitmq"],
    'order.created' => [publisher="default-rabitmq"],
  ]
]

En savoir plus sur File d’attente des messages.

ressource

Les paramètres de configuration des ressources sont disponibles dans ce nœud.

'resource' => [
  'default_setup' => [
    'connection' => 'default'
  ]
]

séance

Les configurations de session sont stockées dans le nœud session.

'session' => [
  'save' => 'files'
],

En savoir plus sur Session.

x-frame-options

L’en-tête x-frame-options peut être configuré à l’aide de ce nœud.

'x-frame-options' => 'SAMEORIGIN'

En savoir plus sur x-frame-options.

système

En utilisant ce nœud, Commerce verrouille les valeurs de configuration dans le fichier env.php, puis désactive le champ dans l’administration.

'system' => [
  'default' => [
    'web' => [
      'secure' => [
          'base_url' => 'https://magento.test/'
      ]
    ]
  ]

En savoir plus dans env-php-config-set.

Ajouter des variables à la configuration du fichier

Vous pouvez définir ou remplacer chaque option de configuration (variable avec valeur) par des variables d’environnement au niveau du système d’exploitation (SE).

La configuration env.php est stockée dans un tableau avec des niveaux imbriqués. Pour convertir un chemin de tableau imbriqué en chaîne pour les variables d’environnement du système d’exploitation, concaténez chaque clé du chemin avec deux caractères de soulignement __, mis en majuscules et précédés du préfixe MAGENTO_DC_.

Par exemple, convertissons le gestionnaire d’enregistrement de session de env.php configuration en une variable d’environnement de système d’exploitation.

'session' => [
  'save' => 'files'
],

Concaténées avec des clés __ et mises en majuscules deviendront SESSION__SAVE.

Ensuite, nous lui ajoutons le préfixe MAGENTO_DC_ pour obtenir le MAGENTO_DC_SESSION__SAVE de nom de la variable d’environnement du système d’exploitation obtenu.

export MAGENTO_DC_SESSION__SAVE=files

Autre exemple : convertissons un chemin d’accès d’option de configuration de env.php scalaire.

'x-frame-options' => 'SAMEORIGIN'
INFO
Bien que le nom de la variable doive être mis en majuscule, la valeur respecte la casse et doit être conservée tel que documenté.

Nous le mettons simplement en majuscules et le précédons de MAGENTO_DC_ pour recevoir le MAGENTO_DC_X-FRAME-OPTIONS final du nom de variable d'environnement du système d'exploitation.

export MAGENTO_DC_X-FRAME-OPTIONS=SAMEORIGIN
INFO
Notez que le contenu env.php aura la priorité sur les variables d’environnement du système d’exploitation.

Remplacer la configuration du fichier par des variables

Pour remplacer les options de configuration de env.php existantes par une variable d’environnement de système d’exploitation, l’élément de tableau de la configuration doit être codé JSON et défini comme une valeur de la variable de système d’exploitation MAGENTO_DC__OVERRIDE.

Si vous devez remplacer plusieurs options de configuration, assemblez-les toutes dans un seul tableau avant l’encodage JSON.

Par exemple, remplaçons les configurations env.php suivantes :

'session' => [
  'save' => 'files'
],
'x-frame-options' => 'SAMEORIGIN'

Le texte codé JSON du tableau ci-dessus serait .
{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}.

Définissez-la désormais comme valeur de la variable du système d’exploitation MAGENTO_DC__OVERRIDE.

export MAGENTO_DC__OVERRIDE='{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}'
INFO
Assurez-vous que le tableau codé JSON est correctement cité et/ou placé dans une séquence d’échappement si nécessaire, pour empêcher le système d’exploitation de corrompre la chaîne codée.
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c