Impostare i valori di configurazione

WARNING
Tutti i comandi CLI di Magento devono essere eseguiti dal proprietario del file system.

In questo argomento vengono descritti i comandi di configurazione avanzati che è possibile utilizzare per:

  • Imposta qualsiasi opzione di configurazione dalla riga di comando
  • Facoltativamente, blocca qualsiasi opzione di configurazione in modo che il suo valore non possa essere modificato in Admin
  • Modificare un’opzione di configurazione bloccata in Admin

È possibile utilizzare questi comandi per impostare la configurazione di Commerce manualmente o utilizzando gli script. Le opzioni di configurazione vengono impostate utilizzando un percorso di configurazione, ovvero una stringa delimitata da / che identifica in modo univoco tale opzione di configurazione. Puoi trovare i percorsi di configurazione nei seguenti riferimenti:

È possibile impostare i valori nei seguenti momenti:

  • Prima di installare Commerce, è possibile impostare i valori di configurazione solo per l'ambito predefinito, in quanto è l'unico ambito valido.

  • Dopo aver installato Commerce, è possibile impostare i valori di configurazione per qualsiasi ambito di visualizzazione del sito Web o dell'archivio.

Utilizza i seguenti comandi:

  • bin/magento config:set imposta qualsiasi valore di configurazione non sensibile in base al relativo percorso di configurazione
  • bin/magento config:sensitive:set imposta qualsiasi valore di configurazione sensibile in base al relativo percorso di configurazione
  • bin/magento config:show mostra i valori di configurazione salvati; i valori delle impostazioni crittografate vengono visualizzati come asterischi

Prerequisiti

Per impostare un valore di configurazione, è necessario conoscere almeno uno dei seguenti elementi:

  • Percorso di configurazione

  • Per impostare un valore di configurazione per un determinato ambito, è necessario conoscere il codice dell'ambito.

    Per impostare un valore di configurazione per l'ambito predefinito, non è necessario eseguire alcuna operazione.

Trova il percorso di configurazione

Consulta i seguenti riferimenti:

Trovare il codice ambito

Puoi trovare il codice ambito nel database di Commerce o nell’amministratore di Commerce.

Per trovare il codice di ambito nell'amministratore:

  1. Accedi all’amministratore come utente che può visualizzare siti web e archiviare visualizzazioni.

  2. Fare clic su Stores > Impostazioni > All Stores.

  3. Nel riquadro di destra fare clic sul nome della visualizzazione del sito Web o della visualizzazione dello store per visualizzarne il codice.

    Nella figura seguente viene illustrato un esempio di codice di un sito Web.

    Ottieni un codice di visualizzazione sito Web o store dallamministratore

  4. Continua con Imposta valori.

Per trovare il codice di ambito nel database:

I codici di ambito per i siti Web e le visualizzazioni degli archivi vengono archiviati nel database di Commerce rispettivamente nelle tabelle store_website e store.

  1. Connettersi al database di Commerce.

    code language-bash
    mysql -u <Commerce database username> -p
    
  2. Immettete i seguenti comandi:

    code language-shell
    use <Commerce database name>;
    
    code language-shell
    SELECT * FROM store;
    
    code language-shell
    SELECT * FROM store_website;
    

    Di seguito è riportato un esempio di risultato:

    code language-terminal
    [mysql]> SELECT * FROM store_website;
    +------------+-------+--------------+------------+------------------+------------+
    | website_id | code  | name         | sort_order | default_group_id | is_default |
    +------------+-------+--------------+------------+------------------+------------+
    |          0 | admin | Admin        |          0 |                0 |          0 |
    |          1 | base  | Main Website |          0 |                1 |          1 |
    |          2 | test1 | Test Website |          0 |                3 |          0 |
    +------------+-------+--------------+------------+------------------+------------+
    

    Utilizzare il valore nella colonna code.

  3. Procedi alla sezione successiva.

Imposta valori

Per impostare i valori di configurazione specifici del sistema:

bin/magento config:set [--scope="..."] [--scope-code="..."] [-le | --lock-env] [-lc | --lock-config] path value

Per impostare i valori di configurazione sensibili:

bin/magento config:sensitive:set [--scope="..."] [--scope-code="..."] path value

Nella tabella seguente sono descritti i parametri del comando set:

Parametro
Descrizione
--scope
Ambito della configurazione. I valori possibili sono default, website o store. Il valore predefinito è default.
--scope-code
Codice ambito della configurazione (codice sito Web o codice visualizzazione archivio)
-e or --lock-env
Blocca il valore in modo che non possa essere modificato nell’amministratore o modifica un’impostazione già bloccata nell’amministratore. Il comando scrive il valore nel file <Commerce base dir>/app/etc/env.php.
-c or --lock-config
Blocca il valore in modo che non possa essere modificato nell’amministratore o modifica un’impostazione già bloccata nell’amministratore. Il comando scrive il valore nel file <Commerce base dir>/app/etc/config.php. L'opzione --lock-config sovrascrive --lock-env se si specificano entrambe le opzioni.
path
Richiesto. Percorso di configurazione
value
Richiesto. Valore della configurazione
INFO
A partire da Commerce 2.2.4, le opzioni --lock-env e --lock-config sostituiscono l'opzione --lock.
Se si utilizza l'opzione --lock-env o --lock-config per impostare o modificare un valore, è necessario utilizzare il comando bin/magento app:config:import per importare l'impostazione prima di accedere all'Admin o alla vetrina.

Se si immette un percorso di configurazione errato, questo comando restituirà un errore

The "wrong/config/path" does not exist

Per ulteriori informazioni, consulta una delle sezioni seguenti:

Imposta i valori di configurazione che possono essere modificati in Admin

Utilizzare bin/magento config:set senza --lock-env o --lock-config per scrivere il valore nel database. I valori impostati in questo modo possono essere modificati in Admin.

Di seguito sono riportati alcuni esempi per l’impostazione di un URL di base dello store:

Impostare l'URL di base per l'ambito predefinito:

bin/magento config:set web/unsecure/base_url http://example.com/

Impostare l'URL di base per il sito Web base:

bin/magento config:set --scope=websites --scope-code=base web/unsecure/base_url http://example2.com/

Impostare l'URL di base per la visualizzazione archivio test:

bin/magento config:set --scope=stores --scope-code=test web/unsecure/base_url http://example3.com/

Imposta i valori di configurazione che non possono essere modificati in Admin

Se si utilizza l'opzione --lock-env come indicato di seguito, il comando salva il valore di configurazione in <Commerce base dir>/app/etc/env.php e disabilita il campo per la modifica di questo valore in Admin.

bin/magento config:set --lock-env --scope=stores --scope-code=default web/unsecure/base_url http://example3.com

È possibile utilizzare l'opzione --lock-env per impostare i valori di configurazione se Commerce non è installato. Tuttavia, è possibile impostare valori solo per l'ambito predefinito.

INFO
Il file env.php è specifico del sistema. Non è consigliabile trasferirla in un altro sistema. Puoi utilizzarlo per sovrascrivere i valori di configurazione dal database. È possibile, ad esempio, acquisire un dump del database da un altro sistema e sovrascrivere base_url e altri valori in modo da non dover modificare il database.

Se si utilizza l'opzione --lock-config come segue, il valore di configurazione viene salvato in <Commerce base dir>/app/etc/config.php. Il campo per la modifica di questo valore in Amministrazione è disabilitato.

bin/magento config:set --lock-config --scope=stores --scope-code=default web/url/use_store 1

È possibile utilizzare --lock-config per impostare i valori di configurazione se Commerce non è installato. Tuttavia, è possibile impostare valori solo per l'ambito predefinito.

INFO
È possibile trasferire config.php a un altro sistema per utilizzare gli stessi valori di configurazione. Ad esempio, se si dispone di un sistema di test, l'utilizzo dello stesso config.php significa che non è necessario impostare nuovamente gli stessi valori di configurazione.

Visualizza il valore delle impostazioni di configurazione

Opzioni comando:

bin/magento config:show [--scope[="..."]] [--scope-code[="..."]] path

dove

  • --scope è l'ambito della configurazione (predefinito, sito Web, archivio). Il valore predefinito è default
  • --scope-code è il codice ambito della configurazione (codice sito Web o codice visualizzazione archivio)
  • path è il percorso di configurazione in formato first_part/second_part/third_part/etc (required)
INFO
Il comando bin/magento config:show visualizza i valori di qualsiasi valore crittografato come una serie di asterischi: **​**​**.

Esempi

Per visualizzare tutte le configurazioni salvate:

bin/magento config:show

Risultato:

web/unsecure/base_url - http://example.com/
general/region/display_all - 1
general/region/state_required - AT,BR,CA,CH,EE,ES,FI,LT,LV,RO,US
catalog/category/root_id - 2
analytics/subscription/enabled - 1

Per visualizzare tutte le configurazioni salvate per il sito Web base:

bin/magento config:show --scope=websites --scope-code=base

Risultato:

web/unsecure/base_url - http://example-for-website.com/
general/region/state_required - AT,BR,CA

Per visualizzare l'URL di base per l'ambito predefinito:

bin/magento config:show web/unsecure/base_url

Risultato:

web/unsecure/base_url - http://example.com/

Per visualizzare l'URL di base per il sito Web base:

bin/magento config:show --scope=websites --scope-code=base web/unsecure/base_url

Risultato:

web/unsecure/base_url - http://example-for-website.com/

Per visualizzare l'URL di base per l'archivio default:

bin/magento config:show --scope=stores --scope-code=default web/unsecure/base_url

Risultato:

web/unsecure/base_url - http://example-for-store.com/
INFO
Il codice ambito può includere solo lettere (a-z o A-Z), numeri (0-9) e caratteri di sottolineatura (_). Inoltre, il primo carattere deve essere una lettera. Se si utilizzano maiuscole o minuscole durante la creazione di una vista sito web o store, internamente la corrispondenza non distingue tra maiuscole e minuscole per consentire l’override delle impostazioni di configurazione tramite le variabili di ambiente. Vedere Utilizzare le variabili di ambiente per sostituire le impostazioni di configurazione.
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c