config.php)config.php wird nicht versioniert. Vorlage: config.sample.php (auf dem Server nach config.php kopieren und anpassen).
| Konstante | Zweck |
|---|---|
SITE_NAME |
Primärer Markenname in Oberfläche und Mails |
SITE_SERVICE_NAME |
Servicename für Fließtexte, Betreffzeilen und textliche Verweise |
SITE_SERVICE_HEADER |
Service-Bezeichnung für Header, Seitentitel und sichtbare Überschriften |
SITE_DEPARTMENT_NAME |
Fachbereichskennzeichnung für Footer und Kommunikation |
SITE_ADDRESS_LINE |
Postanschrift des verantwortlichen Amts im Footer |
SITE_IMPRINT_URL |
Ziel-URL für den Impressumslink |
SITE_PRIVACY_URL |
Ziel-URL für den Datenschutzlink |
SITE_FULL_NAME |
Kombinierter Anzeigename aus Marke und Service-Header |
SITE_URL |
Basispfad oder Basis-URL für Links und Assets |
SITE_CANONICAL_ORIGIN |
Optional: https://hostname (ohne Pfad) für absolute E-Mail-Links, falls HTTP_HOST unzuverlässig ist |
ADMIN_LOGIN_RATE_LIMIT_MAX |
Optional: max. fehlgeschlagene Admin-Logins pro IP und Zeitfenster (Standard: 10) |
ADMIN_LOGIN_RATE_LIMIT_WINDOW |
Optional: Zeitfenster in Sekunden für Admin-Login-Limit (Standard: 900) |
CHECKOUT_RATE_LIMIT_MAX |
Optional: max. Checkout-Versuche pro IP und Fenster (Zähler erst nach erfolgreich gespeicherter Bestellung; Standard: 30) |
CHECKOUT_RATE_LIMIT_WINDOW |
Optional: Zeitfenster in Sekunden für Checkout-Limit (Standard: 3600) |
DISCLAIMER_LINES |
Hinweistext auf der Startseite |
ORDER_PREFIX |
Präfix für Bestellnummern |
ORDER_RECIPIENT_EMAIL |
Standard-Empfänger für interne Bestellmails |
ATTACH_ORDER_PDF_TO_ADMIN_EMAIL |
Standard, ob interne Bestellmails ein PDF erhalten |
ADMIN_EMAIL |
Fallback für Admin-Profile ohne gültige Mailadresse |
FROM_EMAIL |
Absenderadresse ausgehender Mails |
FROM_NAME |
Anzeigename ausgehender Mails |
DATA_DIR |
Verzeichnis für JSON-Daten und Unterordner (data/) |
UPLOADS_DIR |
Verzeichnis für Produktbilder (data/uploads/) |
UPLOADS_URL |
Öffentliche URL-Basis für Uploads (SITE_URL + /data/uploads) |
PRODUCTS_FILE |
JSON-Datei für Produkte |
ORDERS_FILE |
JSON-Datei für Bestellungen |
ORGANIZATIONS_FILE |
JSON-Datei für Organisationen |
SETTINGS_FILE |
JSON-Datei für im Admin veränderbare Systemeinstellungen |
ADMINS_FILE |
JSON-Datei für Adminkonten |
CATEGORIES_FILE |
JSON-Datei für Kategorien |
FAQ_FILE |
JSON-Datei für FAQ-Inhalte |
MANUAL_BACKORDERS_FILE |
JSON-Datei für manuelle Nachbestell-Einträge (ohne Bestellbezug) |
BACKUP_DIR |
Lokales Verzeichnis für Daten-Backups (Standard: DATA_DIR . 'backups/') |
BACKUP_LOCAL_RETENTION |
Anzahl lokal aufzubewahrender Backup-ZIPs (Standard: 4) |
BACKUP_AUTO_INTERVAL_SECONDS |
Intervall für Backups durch Admin-Aktivität (Standard: 604800 = wöchentlich; 0 deaktiviert) |
BACKUP_REMOTE_TARGETS |
Optionale Remote-Ziele für Backup-Uploads (s3, sftp, custom, managed) |
config.php kann direkt im Admin unter Einstellungen bearbeitet werden — dieser Abschnitt ist nur sichtbar, wenn mit dem Benutzerkonto admin angemeldet ist (siehe data/admins.json). Vor dem Speichern wird die PHP-Syntax geprüft (php -l); die vorherige Version wird automatisch nach data/backups/config/ gesichert.
data/settings.json)Im Admin unter Einstellungen überschreibbar (schreibt data/settings.json):
order_recipient_email — Empfänger interner Bestellmails (hat Vorrang vor ORDER_RECIPIENT_EMAIL)attach_order_pdf_to_admin_email — PDF-Anhang an interne BestellmailsDer Startseiten-Introtext wird unter FAQ gepflegt (startpage_intro_text in derselben Datei). Beim Speichern der Einstellungen bleibt der Introtext erhalten.
data/ratelimit/ (wird bei Bedarf angelegt).data/logs/ (siehe logAccess / logError in includes/functions.php).LOG_MAX_BYTES rotiert, es bleiben LOG_KEEP_FILES rotierte Dateien erhalten, und rotierte Logs älter als LOG_MAX_AGE_SECONDS werden entfernt.data/*.json und data/uploads/**; App-Dateien, Logs, Updates, Rate-Limits und bestehende Backups werden ausgeschlossen.config.php, nicht in data/settings.json.Die Konstanten definieren die Startwerte. Änderbare Betriebsparameter wie interne Empfängeradresse können zusätzlich im Adminbereich unter Einstellungen angepasst werden.