riferimento env.php
- Argomenti:
- Configurazione
Creato per:
- Esperto
- Amministratore
- Sviluppatore
Il file env.php
contiene le sezioni seguenti:
Nome | Descrizione |
---|---|
backend | Impostazioni per l'area di amministrazione |
cache | Configurare la pagina Redis e la cache predefinita |
cache_types | Impostazioni archiviazione cache |
consumers_wait_for_messages | Configurare il modo in cui i consumatori elaborano i messaggi dalla coda dei messaggi |
cron | Attiva o disattiva i processi cron |
crypt | Chiave di crittografia per le funzioni di crittografia |
db | Impostazioni di connessione al database |
default_connection | Connessione predefinita code di messaggi |
directories | Impostazioni di mappatura delle directory Commerce |
downloadable_domains | Elenco dei domini scaricabili |
install | Data di installazione |
lock | Blocca impostazioni provider |
MAGE_MODE | modalità applicazione |
queue | Impostazioni Code messaggi |
resource | Mappatura del nome della risorsa su una connessione |
session | Dati archiviazione sessione |
system | Disattiva il campo per la modifica in Admin |
x-frame-options | Impostazione di [x-frame-options][x-frame-options] |
backend
Configura frontName per l'URL amministratore di Commerce utilizzando il nodo backend
in env.php.
'backend' => [
'frontName' => 'admin'
]
cache
Configurare la pagina redis e il caching predefinito utilizzando il nodo cache
nel file 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'
]
]
]
]
Ulteriori informazioni in Configurazione Redis.
cache_types
Da questo nodo sono disponibili tutte le configurazioni dei tipi di cache.
'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
]
Ulteriori informazioni sui diversi tipi di cache.
consumer_wait_for_messages
Specificare se i consumatori devono continuare a eseguire il polling dei messaggi se il numero di messaggi elaborati è inferiore al valore max_messages
. Il valore predefinito è 1
.
'queue' => [
'consumers_wait_for_messages' => 1
]
Sono disponibili le seguenti opzioni:
-
1
- I consumatori continuano a elaborare i messaggi dalla coda dei messaggi fino a raggiungere il valoremax_messages
specificato nel fileenv.php
prima di chiudere la connessione TCP e terminare il processo consumer. Se la coda si svuota prima di raggiungere il valoremax_messages
, il consumatore attende che arrivino altri messaggi.Consigliamo questa impostazione per i commercianti di grandi dimensioni, perché è previsto un flusso costante di messaggi e i ritardi di elaborazione non sono auspicabili.
-
0
- I consumatori elaborano i messaggi disponibili nella coda, chiudono la connessione TCP e terminano. I consumatori non attendono messaggi aggiuntivi per entrare nella coda, anche se il numero di messaggi elaborati è inferiore al valoremax_messages
specificato nel fileenv.php
. Questo può aiutare a prevenire problemi con i processi cron causati da lunghi ritardi nell’elaborazione della coda dei messaggi.Consigliamo questa impostazione per i commercianti più piccoli che non si aspettano un flusso di messaggi costante e preferiscono conservare le risorse informatiche in cambio di ritardi di elaborazione minori quando non potrebbero esserci messaggi per giorni.
cron
Attiva o disattiva i processi cron per l'applicazione Commerce. Per impostazione predefinita, i processi cron sono abilitati. Per disattivarle, aggiungere la configurazione cron
al file env.php
e impostare il valore su 0
.
'cron' => [
'enabled' => 0
]
Ulteriori informazioni su Crons.
criptare
Commerce utilizza una chiave di crittografia per proteggere le password e altri dati sensibili. Questa chiave viene generata durante il processo di installazione.
'crypt' => [
'key' => '63d409380ccb1182bfb27c231b732f05'
]
Ulteriori informazioni sulla chiave di crittografia nella Guida utente di Commerce.
db
Tutte le configurazioni di database sono disponibili in questo nodo.
'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
Definisce la connessione predefinita per le code di messaggi. Il valore può essere db
, amqp
o un sistema di code personalizzato come redismq
. Se si specifica un valore diverso da db
, è necessario installare e configurare prima il software della coda messaggi. In caso contrario, i messaggi non verranno elaborati correttamente.
'queue' => [
'default_connection' => 'amqp'
]
Se queue/default_connection
è specificato nel file di sistema env.php
, questa connessione viene utilizzata per tutte le code di messaggi nel sistema, a meno che non sia definita una connessione specifica in un file queue_topology.xml
, queue_publisher.xml
o queue_consumer.xml
.
Ad esempio, se queue/default_connection
è amqp
in env.php
ma è specificata una connessione db
nei file XML di configurazione della coda di un modulo, il modulo utilizzerà MySQL come gestore di messaggi.
directory
Opzioni di mappatura della directory facoltative che devono essere impostate quando il server Web è configurato per servire l'app Commerce dalla directory /pub
per sicurezza migliorata.
'directories' => [
'document_root_is_pub' => true
]
downloadable_domain
Elenco dei domini scaricabili disponibili in questo nodo. È possibile aggiungere, rimuovere o elencare domini aggiuntivi utilizzando i comandi CLI.
'downloadable_domains' => [
'local.vanilla.com'
]
Ulteriori informazioni su Domini scaricabili.
installare
Data di installazione dell'applicazione Commerce.
'install' => [
'date' => 'Tue, 23 Apr 2019 09:31:07 +0000'
]
blocca
Le impostazioni del provider di blocco sono configurate utilizzando il nodo lock
.
Ulteriori informazioni su Blocca configurazione provider.
MODALITÀ_IMMAGINE
La modalità di distribuzione può essere configurata in questo nodo.
'MAGE_MODE' => 'developer'
Ulteriori informazioni sulle modalità applicazione.
coda
Le configurazioni della coda messaggi sono disponibili in questo nodo.
'queue' => [
'topics' => [
'customer.created' => [publisher="default-rabitmq"],
'order.created' => [publisher="default-rabitmq"],
]
]
Ulteriori informazioni su Coda messaggi.
resource
Le impostazioni di configurazione delle risorse sono disponibili in questo nodo.
'resource' => [
'default_setup' => [
'connection' => 'default'
]
]
sessione
Le configurazioni di sessione sono archiviate nel nodo session
.
'session' => [
'save' => 'files'
],
Ulteriori informazioni sulla sessione.
x-frame-options
l’intestazione x-frame-options può essere configurata utilizzando questo nodo.
'x-frame-options' => 'SAMEORIGIN'
Ulteriori informazioni su x-frame-options.
sistema
Utilizzando questo nodo, Commerce blocca i valori di configurazione nel file env.php
e quindi disabilita il campo nell'amministratore.
'system' => [
'default' => [
'web' => [
'secure' => [
'base_url' => 'https://magento.test/'
]
]
]
Ulteriori informazioni in env-php-config-set.
Aggiungi variabili alla configurazione del file
È possibile impostare o sostituire ogni opzione di configurazione (variabile con valore) con le variabili di ambiente a livello di sistema operativo.
La configurazione env.php
è archiviata in un array con livelli nidificati. Per convertire un percorso array nidificato in una stringa per le variabili di ambiente del sistema operativo, concatenare ogni chiave nel percorso con caratteri di sottolineatura doppia __
, in maiuscolo e con prefisso MAGENTO_DC_
.
Si supponga ad esempio di convertire il gestore di salvataggio della sessione dalla configurazione env.php
in una variabile di ambiente del sistema operativo.
'session' => [
'save' => 'files'
],
Concatenato con __
e chiavi in maiuscolo diventerà SESSION__SAVE
.
Viene quindi aggiunto il prefisso MAGENTO_DC_
per ottenere il nome della variabile di ambiente del sistema operativo risultante MAGENTO_DC_SESSION__SAVE
.
export MAGENTO_DC_SESSION__SAVE=files
Come altro esempio, convertiamo un percorso dell'opzione di configurazione env.php
scalare.
'x-frame-options' => 'SAMEORIGIN'
Per ricevere il nome finale della variabile di ambiente del sistema operativo MAGENTO_DC_X-FRAME-OPTIONS
, è sufficiente utilizzare la maiuscola e il prefisso MAGENTO_DC_
.
export MAGENTO_DC_X-FRAME-OPTIONS=SAMEORIGIN
env.php
avrà priorità rispetto alle variabili di ambiente del sistema operativo.Sovrascrivi configurazione file con variabili
Per sostituire le opzioni di configurazione di env.php
esistenti con una variabile di ambiente del sistema operativo, l'elemento array della configurazione deve essere codificato in JSON e impostato come valore della variabile del sistema operativo MAGENTO_DC__OVERRIDE
.
Se devi ignorare più opzioni di configurazione, assemblatele tutte in un singolo array prima della codifica JSON.
Sostituiamo ad esempio le seguenti env.php
configurazioni:
'session' => [
'save' => 'files'
],
'x-frame-options' => 'SAMEORIGIN'
Il testo codificato JSON dell’array precedente sarebbe{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}
.
Ora impostarlo come valore della variabile del sistema operativo MAGENTO_DC__OVERRIDE
.
export MAGENTO_DC__OVERRIDE='{"session":{"save":"files"},"x-frame-options":"SAMEORIGIN"}'