Konfigurationseinstellungen überschreiben
In diesem Abschnitt wird beschrieben, wie Sie einen Umgebungsvariablennamen ableiten, wenn Sie einen Konfigurationspfad kennen. Sie können Adobe Commerce-Konfigurationseinstellungen mithilfe von Umgebungsvariablen überschreiben. Sie können beispielsweise den Wert der Live-URL eines Zahlungsprozessors auf Ihrem Produktionssystem überschreiben.
Sie können den Wert von any-Konfigurationseinstellungen mithilfe von Umgebungsvariablen überschreiben. Adobe empfiehlt jedoch, konsistente Einstellungen mithilfe der freigegebenen Konfigurationsdatei config.php
und der systemspezifischen Konfigurationsdatei env.php
beizubehalten, wie allgemeine Übersicht zur Bereitstellung.
Umgebungsvariablen
Ein Umgebungsvariablenname besteht aus seinem Gültigkeitsbereich gefolgt von seinem Konfigurationspfad in einem bestimmten Format. In den folgenden Abschnitten wird beschrieben, wie Sie einen Variablennamen detaillierter bestimmen.
Sie können Variablen für eine der folgenden Aktionen verwenden:
-
Sensitive Werte müssen entweder mithilfe von Umgebungsvariablen oder mit dem
magento config:sensitive:set
-Befehl festgelegt werden. -
Systemspezifische Werte müssen mithilfe von Folgendem festgelegt werden:
- Umgebungsvariablen
- Der
magento config:set
Befehl - Der Administrator gefolgt vom Befehl
magento app:config:dump
Konfigurationspfade finden Sie unter:
Variablennamen
Das allgemeine Format der Variablennamen der Systemeinstellungen ist wie folgt:
<SCOPE>__<SYSTEM__VARIABLE__NAME>
<SCOPE>
kann Folgendes sein:
-
Globaler Umfang (d. h. die globale Einstellung für alle Bereiche)
Globale Bereichsvariablen haben das folgende Format:
CONFIG__DEFAULT__<SYSTEM__VARIABLE__NAME>
-
Ein bestimmter Umfang (d. h. die Einstellung wirkt sich nur auf eine bestimmte Store-Ansicht oder Website aus)
Variablen für den Bereich der Store-Ansicht haben beispielsweise das folgende Format:
CONFIG__STORES__ <STORE_VIEW_CODE>__<SYSTEM__VARIABLE__NAME>
Weitere Informationen zu Bereichen finden Sie unter:
<SYSTEM__VARIABLE__NAME>
ist der Konfigurationspfad, bei dem /
durch doppelte Unterstriche ersetzt werden. Weitere Informationen finden Sie Schritt 2: Festlegen von Systemvariablen.
Variablenformat
<SCOPE>
wird durch zwei Unterstriche von <SYSTEM__VARIABLE__NAME>
getrennt.
<SYSTEM__VARIABLE__NAME>
wird vom Konfigurationspfad einer Konfigurationseinstellung abgeleitet einer Zeichenfolge bei der es sich um eine durch /
getrennte Zeichenfolge handelt, die eine bestimmte Einstellung eindeutig identifiziert. Ersetzen Sie jedes /
Zeichen im Konfigurationspfad durch zwei Unterstriche, um die Systemvariable zu erstellen.
Wenn ein Konfigurationspfad einen Unterstrich enthält, bleibt der Unterstrich in der Variablen.
Eine vollständige Liste der Konfigurationspfade finden Sie unter:
Schritt 1: Suchen des Wertes der Website- oder Store-Ansicht
In diesem Abschnitt wird beschrieben, wie Sie Systemkonfigurationswerte nach Bereich“ ( oder Website) suchen und festlegen können. Informationen zum Festlegen globaler Bereichsvariablen finden Sie Schritt 2: Festlegen globaler, Website- oder Store-Ansichtsvariablen.
Bereichswerte stammen aus den store
-, store_group
- und store_website
.
- Die
store
Tabelle gibt Namen und Codes der Speicheransichten an - Die
store_website
Tabelle gibt Website-Namen und -Codes an
Sie können die Code-Werte auch über die Admin-Adresse finden.
So lesen Sie die Tabelle:
-
Spalte
Path in Admin
Werte vor dem Komma sind Pfade in der Admin-Navigation. Werte nach dem Komma sind Optionen im rechten Bereich.
-
Variable name
Spalte ist der Name der entsprechenden Umgebungsvariablen.Sie haben die Möglichkeit, bei Bedarf Systemwerte für diese Konfigurationsparameter als Umgebungsvariablen anzugeben.
- Der gesamte Variablenname lautet immer „ALL CAPS“
- Variablenname mit
CONFIG__
beginnen (beachten Sie zwei Unterstriche) - Sie finden den
<STORE_VIEW_CODE>
oder<WEBSITE_CODE>
Teil eines Variablennamens entweder in der Admin- oder in der Commerce-Datenbank, wie in den folgenden Abschnitten angegeben. - Sie finden
<SYSTEM__VARIABLE__NAME>
wie in 2: Festlegen von globalen, Website- oder Store-Ansichtsvariablen“.
Suchen nach einer Website oder einem Store-Ansichtsbereich im Admin-Bereich
In der folgenden Tabelle ist zusammengefasst, wie Sie im Admin-Bereich nach einem Wert für die Website- oder Store-Ansicht suchen.
CONFIG__STORES__<STORE_VIEW_CODE>__<SYSTEM__VARIABLE__NAME>
CONFIG__WEBSITES__<WEBSITE_CODE>__<SYSTEM__VARIABLE__NAME>
So suchen Sie beispielsweise einen Wert für den Ansichtsbereich einer Website oder eines Stores im Admin-Bereich:
-
Melden Sie sich bei Admin als Benutzer an, der zum Anzeigen von Websites autorisiert ist.
-
Klicken Sie auf Stores > All Stores.
-
Klicken Sie auf den Namen einer Website oder Store-Ansicht.
Der rechte Bereich wird ähnlich der folgenden angezeigt.
-
Der Bereichsname wird im Feld Code angezeigt.
-
Fahren Sie fort mit Schritt 2: Festlegen von globalen, Website- oder Store-Ansichtsvariablen.
Suchen einer Website oder eines Store-Ansichtsumfangs in der Datenbank
So rufen Sie diese Werte aus der Datenbank ab:
-
Melden Sie sich bei Ihrem Entwicklungssystem als Eigentümer des Dateisystems an, falls noch nicht geschehen.
-
Geben Sie den folgenden Befehl ein:
code language-bash mysql -u <database-username> -p
-
Geben Sie an der
mysql>
Eingabeaufforderung die folgenden Befehle in der angegebenen Reihenfolge ein:code language-shell use <database-name>;
-
Verwenden Sie die folgenden SQL-Abfragen, um die relevanten Werte zu finden:
code language-shell SELECT * FROM STORE; SELECT * FROM STORE_WEBSITE;
Es folgt ein Beispiel:
code language-shell 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 | +------------+-------+--------------+------------+------------------+------------+
-
Verwenden Sie den Wert aus der Spalte
code
als Bereichsnamen, nicht denname
.Um beispielsweise eine Konfigurationsvariable für „Website-Test“ festzulegen, verwenden Sie das folgende Format:
code language-shell CONFIG__WEBSITES__TEST1__<SYSTEM__VARIABLE__NAME>
Wo
<SYSTEM__VARIABLE__NAME>
aus dem nächsten Abschnitt kommt.
Schritt 2: Festlegen von globalen, Website- oder Store-Ansichtsvariablen
In diesem Abschnitt wird beschrieben, wie Sie Systemvariablen festlegen.
-
Um Werte für den globalen Umfang festzulegen (d. h. alle Websites, Stores und Store-Ansichten), beginnen Sie den Variablennamen mit
CONFIG__DEFAULT__
. -
Um einen Wert für eine bestimmte Store-Ansicht oder Website festzulegen, starten Sie den Variablennamen wie in Schritt 1: Suchen des Bereichswerts:
CONFIG__WEBSITES
CONFIG__STORES
-
Der letzte Teil des Variablennamens ist der Konfigurationspfad, der für jede Konfigurationseinstellung eindeutig ist.
Die folgende Tabelle zeigt einige Beispielvariablen.
<SCOPE>__CATALOG__SEARCH__ELASTICSEARCH_SERVER_HOSTNAME
<SCOPE>__CATALOG__SEARCH__ELASTICSEARCH_SERVER_PORT
<SCOPE>__SHIPPING__ORIGIN__COUNTRY_ID
<SCOPE>__ADMIN__URL__CUSTOM
<SCOPE>__ADMIN__URL__CUSTOM_PATH
Beispiele
In diesem Abschnitt wird gezeigt, wie Sie Werte einiger Beispielvariablen finden.
Hostname des Elasticsearch-Servers
So suchen Sie den Variablennamen für die globale HTML-Minimierung:
-
Bestimmen Sie den Umfang.
Es ist der globale Bereich, sodass der Variablenname mit
CONFIG__DEFAULT__
beginnt -
Der Rest des Variablennamens ist
CATALOG__SEARCH__ELASTICSEARCH_SERVER_HOSTNAME
.Ergebnis: Der Variablenname ist
CONFIG__DEFAULT__CATALOG__SEARCH__ELASTICSEARCH_SERVER_HOSTNAME
Versandlandursprung
So suchen Sie den Variablennamen für das Versandland:
-
Bestimmen Sie den Umfang.
Suchen Sie den Bereich in Datenbank wie in Schritt 1: Suchen der Website- oder Store-Ansichtsbereichswert beschrieben. (Sie können den Wert auch im Admin finden, wie in der Tabelle [ Schritt 2: Festlegen der Variablen für globale, Website- oder Store-Ansicht gezeigt] (#step-2-set-global-website-or-store-view-variables.
Der Umfang kann beispielsweise
CONFIG__WEBSITES__DEFAULT
sein. -
Der Rest des Variablennamens ist
SHIPPING__ORIGIN__COUNTRY_ID
.Ergebnis: Der Variablenname ist
CONFIG__WEBSITES__DEFAULT__SHIPPING__ORIGIN__COUNTRY_ID
Verwenden von Umgebungsvariablen
Setzen Sie Konfigurationswerte als Variablen mithilfe des PHP's $_ENV
Associate-Arrays. Sie können die Werte in jedem PHP-Skript festlegen, das ausgeführt wird, wenn Commerce ausgeführt wird.
index.php
oder pub/index.php
funktioniert nicht immer erwartungsgemäß, da je nach Webserverkonfiguration unterschiedliche Einstiegspunkte für Anwendungen verwendet werden können. Durch Platzieren von $_ENV
Anweisungen in der app/bootstrap.php
-Datei werden die $_ENV
Anweisungen unabhängig von den verschiedenen Anwendungs-Einstiegspunkten immer ausgeführt, da die app/bootstrap.php
-Datei als Teil der Commerce-Architektur geladen wird.Nachfolgend finden Sie ein Beispiel für die Einstellung von zwei $_ENV
:
$_ENV['CONFIG__DEFAULT__CATALOG__SEARCH__ELASTICSEARCH_SERVER_HOSTNAME'] = 'http://search.example.com';
$_ENV['CONFIG__DEFAULT__GENERAL__STORE_INFORMATION__MERCHANT_VAT_NUMBER'] = '1234';
Ein Beispiel mit einer schrittweisen Anleitung finden Sie unter Festlegen von Konfigurationswerten mithilfe von Umgebungsvariablen.
-
Um Werte zu verwenden, die Sie im
$_ENV
-Array festgelegt haben, müssen Sievariables_order = "EGPCS"
(Environment, Get, Post, Cookie, and Server) in Ihrerphp.ini
-Datei festlegen. Weitere Informationen finden Sie unter PHP-Dokumentation. -
Wenn Sie für Adobe Commerce in der Cloud-Infrastruktur versuchen, Konfigurationseinstellungen mithilfe der Project Web Interface zu überschreiben, müssen Sie dem Variablennamen
env:
voranstellen. Beispiel:
