Quelltext des aktuellen Standes
# Referenz aller auswertbaren Umgebungsvariablen.
#
# Diese Datei ist NICHT die Vorlage für eine Neuinstallation: Der Installations-
# assistent (public/install.php) legt die .env selbst an, inklusive APP_KEY. Liegt
# beim Aufruf bereits eine .env mit gesetztem APP_KEY, gilt OpenNIT als installiert
# und der Assistent startet nicht. Diese Datei dient dazu, einzelne Werte einer
# bestehenden .env nachzuschlagen und zu ergänzen. Nicht gesetzte Schlüssel greifen
# auf die Standardwerte in config/ zurück.
# Anwendungskonfiguration
APP_NAME="OpenNIT"
APP_ENV=production
APP_DEBUG=false
APP_URL=https://docs.example.com
APP_KEY=GENERATE_A_32_CHAR_RANDOM_KEY_HERE
# Datenbank
DB_HOST=localhost
DB_PORT=3306
DB_DATABASE=it_docs
DB_USERNAME=it_docs_user
DB_PASSWORD=SECURE_PASSWORD_HERE
DB_CHARSET=utf8mb4
# Microsoft Entra ID (Azure AD) OAuth
AZURE_TENANT_ID=YOUR_TENANT_ID
AZURE_CLIENT_ID=YOUR_CLIENT_ID
AZURE_CLIENT_SECRET=YOUR_CLIENT_SECRET
AZURE_REDIRECT_URI=https://docs.example.com/auth/callback
# Sicherheit
SESSION_LIFETIME=28800
SESSION_SECURE=true
CSRF_TOKEN_LIFETIME=28800
RATE_LIMIT_REQUESTS=100
RATE_LIMIT_WINDOW=60
# Vertrauenswürdige Reverse-Proxies (kommagetrennt, IPs oder CIDR).
# NUR von diesen Peers wird der X-Forwarded-For-Header für die Client-IP
# ausgewertet (Rate-Limiting). Ohne diese Angabe wird X-Forwarded-For
# IGNORIERT (REMOTE_ADDR), damit niemand das Rate-Limit per Header umgehen kann.
# Beispiel hinter nginx/Cloudflare: TRUSTED_PROXIES=127.0.0.1,::1,10.0.0.0/8
TRUSTED_PROXIES=
# Hinweis: Die IP-Allowlist für das Signatur-Tablet (/signature) wird NICHT hier,
# sondern im Backend unter Admin → Einstellungen → Signatur-Tablet gepflegt.
# Dateispeicher (absoluter Pfad empfohlen, relativ = ab Projektverzeichnis)
STORAGE_PATH=/var/www/it-docs-storage
STORAGE_ENCRYPTION_KEY=GENERATE_A_32_CHAR_RANDOM_KEY_HERE
MAX_UPLOAD_SIZE=52428800
# Geschützte Uploads (Profilfotos, Editor-Bilder) – außerhalb des Webroots.
# Relativ zum Projektverzeichnis oder absoluter Pfad.
# Standard: storage/uploads (wird automatisch angelegt)
UPLOADS_PATH=storage/uploads
# Öffentliche Upload-Pfade ohne Login (kommagetrennt).
# Nur Login-Seiten-Assets – alles andere erfordert eine aktive Session.
# Standard (nicht setzen wenn keine Änderung gewünscht):
# PUBLIC_UPLOAD_PREFIXES=/uploads/logo/,/uploads/favicon/,/uploads/login_bg/
# Audit
AUDIT_RETENTION_YEARS=10
# Export
PDF_PAPER_SIZE=A4
ZIP_ENCRYPTION_METHOD=aes256