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.

TIP
Sehen Sie sich das Thema Umgebungen konfigurieren im Handbuch zu Commerce in Cloud-Infrastrukturen an.

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:

Konfigurationspfade finden Sie unter:

Variablennamen

Das allgemeine Format der Variablennamen der Systemeinstellungen ist wie folgt:

<SCOPE>__<SYSTEM__VARIABLE__NAME>

<SCOPE> kann Folgendes sein:

<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.

Beschreibung
Pfad in Admin
Variablenname
Store-Ansichten erstellen, bearbeiten und löschen
Stores > All Stores
CONFIG__STORES__<STORE_VIEW_CODE>__<SYSTEM__VARIABLE__NAME>
Erstellen, Bearbeiten und Löschen von Websites
Stores > All Stores
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:

  1. Melden Sie sich bei Admin als Benutzer an, der zum Anzeigen von Websites autorisiert ist.

  2. Klicken Sie auf Stores > All Stores.

  3. Klicken Sie auf den Namen einer Website oder Store-Ansicht.

    Der rechte Bereich wird ähnlich der folgenden angezeigt.

    Website-Code suchen

  4. Der Bereichsname wird im Feld Code angezeigt.

  5. 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:

  1. Melden Sie sich bei Ihrem Entwicklungssystem als Eigentümer des Dateisystems an, falls noch nicht geschehen.

  2. Geben Sie den folgenden Befehl ein:

    code language-bash
    mysql -u <database-username> -p
    
  3. Geben Sie an der mysql> Eingabeaufforderung die folgenden Befehle in der angegebenen Reihenfolge ein:

    code language-shell
    use <database-name>;
    
  4. 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 |
    +------------+-------+--------------+------------+------------------+------------+
    
  5. Verwenden Sie den Wert aus der Spalte code als Bereichsnamen, nicht den name.

    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.

Hier einige Beispiele.

Die folgende Tabelle zeigt einige Beispielvariablen.

Beschreibung
Pfad in Admin (ohne Stores > Settings > Configuration)
Variablenname
Hostname des Elasticsearch-Servers
Katalog > Katalog, Hostname des Elasticsearch-Servers
<SCOPE>__CATALOG__SEARCH__ELASTICSEARCH_SERVER_HOSTNAME
Elasticsearch-Server-Port
Katalog > Katalog, Elasticsearch-Server-Port
<SCOPE>__CATALOG__SEARCH__ELASTICSEARCH_SERVER_PORT
Versandlandursprung
Verkauf > Versandeinstellungen
<SCOPE>__SHIPPING__ORIGIN__COUNTRY_ID
Benutzerdefinierte Admin-URL
Erweitert > Admin
<SCOPE>__ADMIN__URL__CUSTOM
Benutzerdefinierter Administratorpfad
Erweitert > Admin
<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:

  1. Bestimmen Sie den Umfang.

    Es ist der globale Bereich, sodass der Variablenname mit CONFIG__DEFAULT__ beginnt

  2. 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:

  1. 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.

  2. 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.

TIP
Das Festlegen von Variablenwerten in 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.

WARNING
  • Um Werte zu verwenden, die Sie im $_ENV-Array festgelegt haben, müssen Sie variables_order = "EGPCS" (Environment, Get, Post, Cookie, and Server) in Ihrer php.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:

Beispiel für eine Umgebungsvariable
recommendation-more-help
386822bd-e32c-40a8-81c2-ed90ad1e198c