Einstellungen auf der Kommandozeile ändern: exp:ini
Diese Seite ist für Administratoren und Entwickler, die INI-Einstellungen ändern. Ein Befehl liest und ändert
Einstellungen in jedem Geltungsbereich: der globalen Überschreibung, einem Siteaccess, einer Extension, einem
Extension-Siteaccess. Er bearbeitet Dateien Zeile für Zeile, sodass Kommentare, Leerzeilen und die Reihenfolge bleiben,
wie Sie sie geschrieben haben (anders als eZINI::save(), das die ganze Datei neu schreibt). Hinzugefügt am
02.10.2026. Vollständige Referenz mit der Ausgabe jeder Aktion: Konsole exp:ini.
Warnung
.htaccessbremst jede Anfrage. Sind.htaccess-Dateien erlaubt (AllowOverridealles außerNone), 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 Noneim 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 auchstaticcache_offload.conf), setzen SieAllowOverride None, führen Sieapachectl configtestaus, 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.
Fünf Befehle, die den größten Teil eines Tages abdecken
./console exp:ini set site.ini/SiteSettings/SiteName "My site" global --allow-root-user
./console exp:ini get site.ini/SiteSettings/SiteName --allow-root-user
./console exp:ini toggle site.ini/ContentSettings/ViewCaching global --allow-root-user
./console exp:ini where cronjob.ini/CronjobPart-publishing/Scripts --allow-root-user
./console exp:ini rem site.ini/SiteSettings/SiteName siteaccess:admin --allow-root-userphp bin/php/ini.php ...ist derselbe Befehl.exp:ini --helplistet die Aktionen auf;exp:ini help <action>erklärt eine.- Fügen Sie
--dry-runhinzu, um zu sehen, was geschehen würde, ohne zu schreiben.
Geltungsbereiche
| Geltungsbereich | Geschriebene Datei |
|---|---|
global (oder override) | settings/override/<file>.ini.append.php |
siteaccess:<sa> oder <sa> | settings/siteaccess/<sa>/<file>.ini.append.php |
extension:<ext> | extension/<ext>/settings/<file>.ini.append.php |
extension:<ext>:siteaccess:<sa> | extension/<ext>/settings/siteaccess/<sa>/<file>.ini.append.php |
default | settings/<file>.ini; abgelehnt außer mit --allow-default |
Aktionen
| Aktion | Was sie tut |
|---|---|
get | Einen Wert ausgeben |
set | Einen Wert schreiben |
add | Zu einem Array hinzufügen, ohne Duplikate |
rem | Einen Wert entfernen |
clear | Die Zurücksetzzeile Variable[] schreiben |
toggle | enabled/disabled, true/false, yes/no, on/off, 1/0 umschalten und dabei Ihre Schreibweise beibehalten |
copy, move, move-all | Einstellungen kopieren oder verschieben, zum Beispiel in eine Extension |
where | Jede Datei, die eine Variable setzt, in Ladereihenfolge, und der geltende Wert; führt auch die Dateien inaktiver Extensions auf |
list, scopes, actions | Einstellungen, Geltungsbereiche und Aktionen auflisten |
Was er für die Sicherheit tut
- Eine Sicherung jeder geänderten Datei geht nach
var/backup/ini/<timestamp>/. - Das Speichern als Benutzer der Website behält die Gruppe der Datei bei (er schreibt an Ort und Stelle neu, wenn sich die Gruppe nicht setzen lässt).
- Schreibvorgänge an Einstellungen werden im Prüfprotokoll als
system.setting.writeerfasst; Geheimnisse werden als[secret]erfasst.
Erweitern
Aktionen und Anbieter von Geltungsbereichen sind Klassen, die in settings/ini.ini [IniCommandSettings] registriert
sind. Setup > RAD unter /setup/radsurvey/(show)/inicommand listet jede mit ihrem Eigentümer auf. Dieselbe
Editorklasse (expIniEditor) steht hinter dem Reiter für Einstellungen der Debug-Leiste.
Siehe auch: config.php
exp:ini bearbeitet die INI-Dateien in settings/ und in Erweiterungen. Die Konstanten in config.php
(Dateimodi, INI-Prüfungen, Cluster-Speicher, Log-Rotation), die gelesen werden, bevor irgendeine INI-Datei gelesen
wird, haben eigene Befehle: exp:config:list, exp:config:get, exp:config:set und exp:config:unset, dazu
exp:setup:config, das die Datei an ihren Platz bringt. Sie folgen denselben Regeln: ein Probelauf ohne --apply,
eine Sicherung jeder geänderten Datei (nach var/backup/config/<Zeit>/) und maskierte Geheimnisse. Siehe
.htaccess und config.php von der Konsole aus einrichten und
Konsolenbefehle für .htaccess und config.php.
Verwandte Seiten
- Konsole
- .htaccess und config.php von der Konsole aus einrichten:
exp:config:*fürconfig.php - Platzierungen von INI-Überschreibungen
- Audit-Ereignismodell
- eZINI erhält Kommentare beim Speichern
- INI-Überschreibungen für mehrere Websites
- Checkliste zur Aktualisierung vom 1. und 2. Oktober 2026
- Changelog 6.0.15
- Chronik: Juni 2026, zweite Hälfte, Oktober 2026
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.