Skip to the content
Documentation
Help Start
Reading in:
  • German: 9,059 of 9,059 pages
About the help in other languages
All help pages

Umgebungsvariablen

Diese Seite listet die Umgebungsvariablen auf, die Exponential 6 liest, was jede bewirkt und wer sie setzt. Sie richtet sich an Administratoren, Hoster und Entwickler, die einen Server, einen Container oder eine…

Download as PDF

Address: https://doc.exponential.earth/exphelp/viewer/guides/environment-variables.md

On this page

This page is a translation. Read the English original

Umgebungsvariablen

Diese Seite listet die Umgebungsvariablen auf, die Exponential 6 liest, was jede bewirkt und wer sie setzt. Sie richtet sich an Administratoren, Hoster und Entwickler, die einen Server, einen Container oder eine Deployment-Pipeline konfigurieren.

Warnung .htaccess bremst jede Anfrage. Sind .htaccess-Dateien erlaubt (AllowOverride alles außer None), geschweige denn genutzt, sucht Apache sie bei jeder Anfrage in jedem Verzeichnis des Pfads und liest und wertet sie aus, und die Ladezeiten der Seiten steigen drastisch (gemessen). Die einzige wirkliche Abhilfe ist, die Funktion für den virtuellen Host abzuschalten: AllowOverride None im virtuellen HTTPS-Host, und die Regeln in der Konfiguration des virtuellen Hosts selbst als mod_rewrite-Regeln. Das ist in Geschwindigkeitstests im Produktivbetrieb weit schneller und die Zeit für die Optimierung einer Produktivkonfiguration unbedingt wert. Stellen Sie sofort um: Übernehmen Sie die Regeln des Beispiels für einen virtuellen HTTPS-Host in Ihren virtuellen Host (mit dem statischen Cache auch staticcache_offload.conf), setzen Sie AllowOverride None, führen Sie apachectl configtest aus, laden Sie Apache neu und testen Sie die Website. Dieselben Regeln für andere Server: nginx, LiteSpeed, Caddy, IIS, Velocity (eingebaut); wohin Regeln für virtuelle Hosts in einem Control Panel gehören: Plesk, cPanel, DirectAdmin, ISPConfig. Unter LiteSpeed oder OpenLiteSpeed kann zusätzlich der Seiten-Cache des Servers anonyme Besucher und Crawler ohne PHP bedienen: Seiten-Caching mit LiteSpeed und OpenLiteSpeed.

Exponential wird über seine INI-Dateien (settings/) konfiguriert und, für einige Dinge, die bekannt sein müssen, bevor die Einstellungen gelesen werden, über Konstanten in config.php und config.env.php (EXP_ENV, EZP_INI_FILEMTIME_CHECK und ähnliche). Umgebungsvariablen werden dort verwendet, wo die Einstellung zu einem Serverprozess gehören muss und niemals mit einer Kopie der Einstellungen mitwandern darf: der Demo-Modus, das Engine-Archiv, Passwörter, die einem Installer übergeben werden, und Werte, die ein Befehl an die von ihm gestarteten Prozesse weitergibt.

PHP liest eine Umgebungsvariable mit getenv(). Unter PHP-FPM liefert das auch die FastCGI-Parameter der Anfrage (env[...] im Pool, SetEnv in Apache mit mod_proxy_fcgi, fastcgi_param in nginx); unter Apache mit mod_php und LiteSpeed mit lsphp kommt ein SetEnv auf dieselbe Weise an. Persistente Worker (Exponential Velocity, FrankenPHP) erben beim Start die Umgebung des Serverprozesses.

Inhalt

  1. Variablen, die Sie setzen
  2. Variablen, die Exponential für seine eigenen Prozesse setzt
  3. Konstanten, die keine Umgebungsvariablen sind
  4. Wo eine Umgebungsvariable gesetzt wird
  5. Verwandte Seiten

Variablen, die Sie setzen

VariableWerteWas sie bewirktGelesen von
EXP_DEMO_MODE1 (genau)Demo-Modus für eine öffentliche Demo: Administratorpasswörter können auf keinem Weg geändert oder zurückgesetzt werden, die Installer akzeptieren ein bekanntes oder kurzes Administratorpasswort (publish, publishing; nie ein leeres), die Administration zeigt ein Banner, und jeder Prozess vermerkt demo/mode in security.log und system.demo.mode im Audit. Jeder andere Wert oder gar keiner lässt ihn ausgeschaltet. Wird bei jedem Aufruf gelesen (getenv(), dann $_SERVER); nie aus einer INI-Datei oder einer Anfrage. Unter Velocity nie aus der gemeinsamen /etc/vc/envvars (verwenden Sie die Site-envvars). Setzen Sie ihn nie für eine echte Site. Demo-ModusexpDemoMode (kernel/classes/expdemomode.php)
EXP_ENGINE_PHARder Pfad eines Engine-ArchivsFührt die Kernel- und Bibliotheksklassen aus diesem Archiv statt aus den Dateien auf der Festplatte aus (nur wenn die Datei existiert). exp:velocity setzt sie für die von ihm gestarteten Server, wenn ein Archiv konfiguriert ist. Velocity-Enginesautoload.php, expVelocity
EXP_INSTALL_DB_PASSWORDein PasswortDas Datenbankpasswort für exp:install, wenn --db-password nicht angegeben ist, damit es weder in der Prozessliste noch in der Shell-Historie erscheint. Kapitel 7bin/php/install.php
EXP_KICKSTART_LOG00 schaltet var/log/kickstart.log von exp:kickstarter run ab. Kapitel 6der Kickstarter
EXP_BENCHMARK_AUTHuser:passwordHTTP-Basic-Authentifizierung für exp:benchmark, wenn --auth nicht angegeben istder Benchmark-Befehl
EXP_MONGO_TRACEein DateipfadSchreibt jede MongoDB-Anweisung vor ihrer Ausführung in diese Datei, um eine Anweisung zu finden, die nie zurückkehrt. Nicht gesetzt, ist sie aus und kostet nichtsder MongoDB-Treiber (lib/ezdb/classes/expmongodb.php)
EXP_SETUP_LOG_DIRein VerzeichnisWo setup.log und der Zustand des Web-Setups statt in var/log abgelegt werden (die Tests verwenden es, damit sie nie das Log einer echten Installation rotieren)expSetupLog
PHP_CLI_SERVER_WORKERSeine ZahlPHPs eigene Variable: die Worker des eingebauten Webservers von PHP, den die php-Engine von Velocity verwendetPHP; angezeigt unter Setup > Systeminformationen

Variablen, die Exponential für seine eigenen Prozesse setzt

Diese werden von einem Exponential-Befehl für einen Prozess gesetzt, den er startet. Setzen Sie sie nicht selbst.

VariableGesetzt vonBedeutung
EXP_SETUP_RUNdem Setup, für die Befehle, die es ausführtdie Befehle arbeiten mit den Einstellungen, wie sie vor der Installation sind; das Audit schlägt den Benutzer nicht nach
EXP_KICKSTART_LOG_CHILDexp:kickstarter runder Lauf ist der protokollierte Kindprozess
EXP_PRELOAD_DETACHED, EXP_PRELOAD_ERRORSdem Hintergrundjob des Preloadersder Job läuft losgelöst; wohin seine Fehler gehen
EXP_PHAR_REEXECexp:phar buildder Build hat sich selbst mit abgeschaltetem phar.readonly erneut gestartet
EXP_VELOCITY_ENGINE, EXP_VELOCITY_ROOT, EXP_VELOCITY_STATIC_PATHS, EXP_VELOCITY_NEVER_STATIC, EXP_VELOCITY_FOLLOW_SYMLINKSexp:velocity für die Engines php und frankenphpder Name der Engine, das Document Root und welche Dateien unverändert ausgeliefert werden

Konstanten, die keine Umgebungsvariablen sind

EXP_ENV (der Name der Umgebung, config.env.php), EZP_INI_FILEMTIME_CHECK, EZP_DIR_MODE_MAX, EZP_FILE_MODE_MAX und die anderen EZP_*- / EXP_*-Namen in config.php-RECOMMENDED und config.env.php.example sind PHP-Konstanten, die in diesen Dateien definiert werden. Eine gleichnamige Umgebungsvariable zu setzen, bewirkt nichts. Umgekehrt gilt für EXP_DEMO_MODE: Eine gleichnamige Konstante in config.php zu definieren, bewirkt nichts; der Demo-Modus kommt nur aus der Umgebung.

Die beiden Dateien haben unterschiedliche Aufgaben. config.env.php enthält nur, was sich je Maschine unterscheidet, den Namen der Umgebung EXP_ENV; sie wird von Hand aus config.env.php.example kopiert und von der Konsole nicht angefasst. config.php enthält die Konstanten der Installation (Dateimodi, INI-Prüfungen, Cluster-Speicher, Log-Rotation); sie wird mit ./console exp:setup:config --apply an ihren Platz gebracht und mit ./console exp:config:list, exp:config:get, exp:config:set und exp:config:unset gelesen und geändert. Um einen Wert aus einer Umgebungsvariablen in config.php zu übernehmen, setzen Sie ihn beim Deployment oder beim Start des Containers: ./console exp:config:set CLUSTER_STORAGE_HOST "$CLUSTER_DB_HOST" --apply. Siehe .htaccess und config.php von der Konsole aus einrichten.

Wo eine Umgebungsvariable gesetzt wird

Wo PHP läuftWie
Apache (mod_php oder PHP-FPM über mod_proxy_fcgi)SetEnv NAME value im virtuellen Host oder in der .htaccess der Site (mod_env)
LiteSpeed / OpenLiteSpeed mit lsphpSetEnv in .htaccess (LiteSpeed liest sie wie Apache) oder die Umgebung des virtuellen Hosts
PHP-FPMenv[NAME] = value im Pool der Site, dann den Master dieses Pools neu laden
nginx mit PHP-FPMfastcgi_param NAME value; dort, wo Anfragen an PHP-FPM übergeben werden, oder der Pool
Exponential Velocityexport NAME=value in /etc/vc/envvars: Der Server liest die Datei bei jedem Start und exportiert, was sie setzt, in seine eigene Umgebung, bevor er forkt, sodass jeder Worker es sieht und ein Neustart oder Deploy aus einer beliebigen Shell es behält. Die Umgebung des Prozesses, der exp:velocity start ausführt (Environment= in seiner systemd-Unit oder einem Drop-in, oder export in der Shell), hat Vorrang vor der Datei. /etc/vc/envvars liest der Server jeder Installation auf dem Host; eine Variable nur für eine Installation gehört in ihre Site-envvars, /etc/vc/sites-available/<site>.envvars, die exp:velocity start nur an den Server dieser Installation übergibt und die Vorrang vor beiden hat. EXP_DEMO_MODE wird nur von dort (oder aus der Startumgebung) übernommen: Ein Worker weist es aus der gemeinsamen Datei zurück. Die Dateien werden gelesen, nie ausgeführt, und weisen PATH, LD_*, DYLD_*, MALLOC_*, HTTP_*, PHPRC, PHP_INI_SCAN_DIR, GLIBC_TUNABLES, HOME, USER und die anderen Namen zurück, die in der Verzeichnisstruktur aufgeführt sind
Croneine Zeile NAME=value am Anfang der Crontab
Konsoleexport NAME=value oder NAME=value command für einen einzelnen Befehl
ContainerENV im Image, -e, --env-file oder environment: / env_file: für einen Dienst

Beispiele für den Demo-Modus, eines pro Ort: Beispiele zum Demo-Modus.

Verwandte Seiten

Werden Sie Exponential-Partner

Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.

Something wrong on this page? Report an error

Documentation license

This documentation is free documentation, licensed under the GNU Free Documentation License 1.3 or later.

Exponential Copyright © 1998-2026 Exponential Foundation and 7x