APBoard v3 · Dokumentation

Dokumentation

Alles was du brauchst, um APBoard zu installieren, zu konfigurieren und zu betreiben – ausführlich erklärt, auch für absolute Einsteiger.

APBoard Dokumentation Konfiguration

.env & config.php

Alle Konfigurationsoptionen von APBoard im Überblick. Hier erfährst du, was jede Variable bedeutet und wie du SMTP, Datenbankverbindung und Sicherheitseinstellungen richtig konfigurierst.

Wo liegt die Konfiguration?

APBoard nutzt zwei Konfigurationsdateien:

  • .env — Umgebungsvariablen. Diese Datei enthält alle Zugangsdaten und umgebungsspezifischen Einstellungen (Produktiv vs. Entwicklung). Bei Docker-Installationen liegt sie im APBoard-Wurzelverzeichnis.
  • config/config.php — Erweiterter Konfigurationsblock für Einstellungen, die nicht über .env gesetzt werden können. Bei LAMP-Installationen wird diese Datei vom Web-Installer automatisch erstellt.
Sicherheitshinweis

Die .env-Datei enthält Passwörter und Zugangsdaten. Sie darf niemals öffentlich zugänglich sein. Bei LAMP-Installationen stelle sicher, dass Apache die Datei nicht ausliefert. Bei Docker ist sie durch das Containersetup geschützt.

Alle .env-Variablen

Anwendung

VariableStandardBeschreibung
APP_NAME APBoard Name der Anwendung. Erscheint in Browser-Tab und E-Mail-Headern.
APP_URL (erforderlich) Vollständige URL des Forums. Z.B. https://forum.meine-domain.de. Kein abschließender Schrägstrich.
APP_ENV production production für Live-Betrieb, development für lokale Entwicklung.
APP_DEBUG false Im Produktivbetrieb immer false! Bei true werden detaillierte Fehlermeldungen inkl. Passwörtern angezeigt.
APP_KEY wird automatisch generiert Kryptografischer Schlüssel für Sessions und verschlüsselte Daten. Niemals ändern nach der Installation!
APP_TIMEZONE Europe/Berlin Zeitzone für Datums-/Zeitangaben. Gültige Werte: PHP-Zeitzonen wie Europe/Berlin, UTC, America/New_York.
APP_LOCALE de Standard-Sprache der Oberfläche. de für Deutsch, en für Englisch.

Datenbank

VariableStandardBeschreibung
DB_CONNECTION mysql Datenbank-Treiber. Immer mysql (gilt auch für MariaDB).
DB_HOST db (Docker) / localhost (LAMP) Hostname des Datenbankservers. Bei Docker immer db, bei LAMP meist localhost.
DB_PORT 3306 Datenbankport. Standard ist 3306.
DB_DATABASE apboard Name der Datenbank.
DB_USERNAME apboard Datenbankbenutzer.
DB_PASSWORD (erforderlich) Datenbankpasswort. Wähle ein langes, zufälliges Passwort (min. 20 Zeichen).
MYSQL_ROOT_PASSWORD (nur Docker) Root-Passwort für den MariaDB-Container. Wird nur einmalig beim ersten Start gesetzt.

E-Mail / SMTP

VariableBeispielBeschreibung
MAIL_MAILER smtp E-Mail-Versandmethode. smtp für externen SMTP-Server, log für Entwicklung (schreibt nur in Logs), null zum Deaktivieren.
MAIL_HOST smtp.mailbox.org SMTP-Server-Hostname.
MAIL_PORT 587 SMTP-Port. 587 = STARTTLS (empfohlen), 465 = SSL/TLS, 25 = unverschlüsselt (nicht empfohlen).
MAIL_ENCRYPTION tls Verschlüsselung. tls für Port 587 (STARTTLS), ssl für Port 465.
MAIL_USERNAME forum@meine-domain.de SMTP-Benutzername (meist die E-Mail-Adresse).
MAIL_PASSWORD (dein SMTP-Passwort) SMTP-Passwort. Bei Gmail: App-Passwort verwenden (kein Account-Passwort).
MAIL_FROM_ADDRESS forum@meine-domain.de Absender-E-Mail-Adresse für alle Forum-Mails.
MAIL_FROM_NAME Mein Forum Anzeigename des Absenders.

SMTP-Konfiguration für häufige Anbieter

mailbox.org

MAIL_HOST
smtp.mailbox.org
MAIL_PORT
587
MAIL_ENCRYPTION
tls
MAIL_USERNAME
deine@mailbox.org-adresse.de

Gmail (mit App-Passwort)

Google App-Passwort erforderlich

Gmail unterstützt keine direkten SMTP-Verbindungen mit dem Account-Passwort mehr. Erstelle ein App-Passwort unter myaccount.google.com/apppasswords. Dafür muss 2-Faktor-Authentifizierung aktiviert sein.

MAIL_HOST
smtp.gmail.com
MAIL_PORT
587
MAIL_ENCRYPTION
tls
MAIL_USERNAME
dein@gmail.com
MAIL_PASSWORD
xxxx xxxx xxxx xxxx (App-Passwort)

IONOS / 1&1

MAIL_HOST
smtp.ionos.de
MAIL_PORT
587
MAIL_ENCRYPTION
tls

Hetzner Mail (wenn inklusive)

MAIL_HOST
mail.your-server.de
MAIL_PORT
587
MAIL_ENCRYPTION
tls

Admin-Account

VariableBeschreibung
ADMIN_USERNAME Benutzername des ersten Admin-Accounts. Wird beim ersten Start einmalig erstellt.
ADMIN_EMAIL E-Mail-Adresse des Admin-Accounts.
ADMIN_PASSWORD Initiales Passwort. Nach dem ersten Login sofort im Admin-Panel ändern!

config.php im Detail

Die config/config.php enthält weitergehende Einstellungen, die nicht über Umgebungsvariablen konfiguriert werden. Sie wird vom Web-Installer bei LAMP-Installationen automatisch erstellt, oder liegt als Beispieldatei vor.

Die wichtigsten Sektionen:

  • session — Session-Lifetime, Cookie-Einstellungen, Secure-Flag
  • uploads — Max. Upload-Größe, erlaubte Dateitypen
  • security — Rate-Limiting, Login-Versuche, CAPTCHA-Einstellungen
  • cache — Cache-Treiber (file, database, redis)

Sicherheitshinweise

Wichtige Sicherheitsregeln
  • APP_DEBUG=false im Produktivbetrieb — immer
  • Sichere, zufällige Passwörter für Datenbank und Admin-Account
  • .env-Datei nicht in Git committen (steht bereits in .gitignore)
  • APP_KEY nach der Installation niemals ändern (invalidiert alle Sessions)
  • SMTP-Passwörter regelmäßig rotieren, besonders bei Sicherheitsvorfällen