Konfiguration
Chamilo 2.0 verwendet Umgebungsvariablen und Symfony-Konfigurationsdateien für seine grundlegenden Einstellungen. Diese Seite behandelt die wichtigsten Konfigurationsdateien und Variablen.
Umgebungsvariablen (.env)
Die primäre Konfigurationsdatei ist .env im Chamilo-Stammverzeichnis. Diese Datei enthält umgebungsspezifische Einstellungen, die nicht in die Versionskontrolle aufgenommen werden sollten.
Eine Standarddatei .env.dist wird mit Chamilo ausgeliefert und enthält dokumentierte Standardwerte. Erstellen Sie .env (erforderlich, um die Installation zu starten), um Werte für Ihre Umgebung zu überschreiben.
Wichtige Variablen
APP_ENV
Die Anwendungsumgebung auf Symfony-Ebene. Verwenden Sie prod für Produktion, dev für Entwicklung, 'test' für Tests.
prod
APP_SECRET
Eine zufällige Zeichenfolge, die für CSRF-Token, Cookie-Signierung und andere kryptografische Operationen verwendet wird. Chamilo generiert für jede Installation einen eindeutigen Wert. Ändern Sie diesen nicht.
a1b2c3d4e5f6...
DATABASE_HOST
Der Datenbank-Host. Standardmäßig localhost.
localhost
DATABASE_PORT
Der Datenbank-Port. Standardmäßig 3306 für MySQL/MariaDB.
3306
DATABASE_NAME
Der Datenbankname, wie von Ihnen im Installationsassistenten angegeben.
Siehe unten.
DATABASE_USER
Der Datenbank-Benutzername, wie von Ihnen im Installationsassistenten angegeben.
Siehe unten.
DATABASE_PASSWORD
Das Passwort des Datenbank-Benutzers, wie von Ihnen im Installationsassistenten angegeben.
Siehe unten.
TRUSTED_PROXIES
(Optional) Wenn Sie Chamilo hinter einem Reverse-Proxy hosten, müssen Sie hier die IP(s) des Reverse-Proxys angeben, damit Chamilo Aufrufe korrekt interpretieren und Antworten generieren kann.
Andere Einstellungen in .env werden relativ selten geändert.
Beachten Sie, dass in zukünftigen Versionen die DATABASE_*-Einstellungen in eine einzige DATABASE_URL-Variable zusammengefasst werden.
Die Konfiguration für das Senden von E-Mails wird während der Installation angezeigt, kann aber später im Abschnitt Plattformeinstellungen des Administrations-Dashboards geändert werden.
Symfony-Konfiguration (config/-Verzeichnis)
Die Konfiguration auf Symfony-Ebene befindet sich im Verzeichnis config/. Diese YAML-Dateien steuern das Verhalten des Frameworks, Dienstdefinitionen und paket-spezifische Einstellungen.
Es ist nicht häufig notwendig, diese Dateien zu ändern, und Änderungen können Ihr Portal funktionsunfähig machen. Versuchen Sie daher nicht, diese zu ändern, wenn Sie die Verfügbarkeit des Systems sicherstellen müssen.
Wichtige Konfigurationsdateien
config/authentication.yaml
Konfiguration der Authentifizierungsmethoden.
config/packages/doctrine.yaml
Datenbank- und ORM-Konfiguration.
config/packages/security.yaml
Authentifizierung, Firewalls, Zugriffskontrolle und Rollenhierarchien.
config/packages/cache.yaml
Cache-Adapter-Konfiguration (Dateisystem, APCu, Redis).
config/packages/framework.yaml
Allgemeine Symfony-Framework-Einstellungen (Sitzung, CSRF, Router, HTTP-Caching).
config/packages/twig.yaml
Konfiguration der Template-Engine.
config/services.yaml
Definitionen von Anwendungsdiensten und Dependency Injection.
Umgebungsspezifische Überschreibungen
Symfony unterstützt umgebungsspezifische Konfigurationen. Dateien in config/packages/prod/ überschreiben die Standardwerte, wenn APP_ENV=prod, und config/packages/dev/ überschreibt, wenn APP_ENV=dev.
Zum Beispiel konfiguriert config/packages/prod/monolog.yaml in der Regel eine weniger ausführliche Protokollierung als das Entwicklungspendant.
Chamilo definiert in der Software selbst keine Konfiguration in config/packages/prod/. Wenn Sie also Einstellungen aus config/packages/*.yaml anpassen möchten, erstellen Sie einfach eine Kopie der YAML-Datei in diesem Verzeichnis und ändern Sie dort die Einstellungen.
Dateiberechtigungen
Wir haben in Version 2.0+ darauf geachtet, dass nur ein einziges Verzeichnis Berechtigungen benötigt. Dies ist das Verzeichnis var/. Um komplexe Probleme zu vermeiden, reicht es aus, das gesamte Verzeichnis für den Webserver-Systembenutzer schreibbar zu machen.
Setzen Sie die Berechtigungen unter Debian-basierten Systemen entsprechend:
Häufige Konfigurationsaufgaben
Wechsel in den Produktionsmodus
Leeren und erwärmen Sie dann den Cache:
Konfiguration vertrauenswürdiger Proxies
Wenn Chamilo hinter einem Reverse-Proxy oder Load-Balancer läuft, konfigurieren Sie vertrauenswürdige Proxies, damit die HTTPS-Erkennung und die Auflösung der Client-IP korrekt funktionieren:
Konfiguration der Sitzungsspeicherung
Standardmäßig werden Sitzungen im Dateisystem gespeichert. Für Multi-Server-Bereitstellungen konfigurieren Sie Redis- oder datenbankgestützte Sitzungen:
Tipps
Bearbeiten Sie niemals
.env.distdirekt -- Verwenden Sie immer.envfür Ihre Anpassungen. Die Datei.env.distkann bei Upgrades überschrieben werden.Behalten Sie
APP_DEBUG=0in der Produktion -- Der Debug-Modus gibt sensible Informationen auf Fehlerseiten preis.Sichern Sie
.envseparat vom Codebase, da sie Zugangsdaten enthält und vom Versionskontrollsystem ausgeschlossen ist.
Zuletzt aktualisiert
War das hilfreich?