Back to overview

Installation on premises (deutsch)

Installation & Setup Published on 31.10.2025

Anleitung: Installation und Konfiguration

Willkommen zu unserem Installations Guide! Hier geht es um Installation und Konfiguration des gesamten Systems auf Ihrem Web-Server. Dieser Leitfaden führt Sie Schritt für Schritt durch den Prozess, von der Einrichtung der Datenbank bis zur Anpassung der wichtigsten Konfigurationsdateien.

Teil 1: Die Installation

In diesem Teil bereiten wir die Server-Umgebung vor, erstellen die Datenbank und kopieren die Anwendungsdateien.

Schritt 1.1: Datenbank erstellen

Die Anwendung benötigt eine leere Datenbank, um ihre Tabellen zu speichern. Loggen Sie sich in Ihr Datenbank-Verwaltungstool ein und erstellen Sie eine neue Datenbank.

  1. Wählen Sie einen Namen für Ihre Datenbank (z.B. intex_app).
  2. Wählen Sie als Kollation utf8mb4_unicode_ci für die beste Kompatibilität mit Sonderzeichen.
  3. Erstellen Sie einen dedizierten Datenbank-Benutzer (z.B. intex_user) mit einem sicheren Passwort und weisen Sie ihm alle Rechte für die neu erstellte Datenbank zu.

Notieren Sie sich den Datenbanknamen, den Benutzernamen und das Passwort. Sie werden diese im nächsten Schritt benötigen.

Schritt 1.2: Datenbank-Schema importieren

Die Anwendung benötigt eine spezifische Tabellenstruktur. Diese ist in einer SQL-Datei definiert, die Sie mit der Anwendung erhalten haben (z.B. database.sql).

  1. Öffnen Sie die neu erstellte, leere Datenbank in Ihrem Verwaltungstool.
  2. Wählen Sie die "Importieren"-Funktion.
  3. Laden Sie die database.sql-Datei hoch und führen Sie den Import aus.

Nach dem Import sollten Sie Tabellen wie user, custom_tables, custom_fields etc. in Ihrer Datenbank sehen.

Schritt 1.3: Anwendungsdateien kopieren

Kopieren Sie den gesamten Ordner mit den PHP-Dateien der Anwendung in das Hauptverzeichnis (Document Root) Ihres Webservers. Dies ist oft ein Ordner namens htdocs, www oder public_html.

Stellen Sie sicher, dass der Webserver Schreibrechte auf bestimmte Ordner hat, insbesondere auf:

  • /files/ (für Datei-Uploads)
  • /api/logs/ (für API-Protokolle, falls aktiviert)

Teil 2: Die Konfiguration

Nun passen wir die Anwendung an Ihre Server-Umgebung an. Alle wichtigen Einstellungen befinden sich in wenigen zentralen Dateien.

Schritt 2.1: Datenbankverbindung (`configdb.php`)

Diese Datei enthält die Zugangsdaten zu Ihrer Datenbank. Öffnen Sie die Datei configdb.php und tragen Sie die in Schritt 1.1 notierten Daten ein.

<?php
// configdb.php

define('DB_HOST', 'localhost'); // Ihr Datenbank-Host, meistens 'localhost'
define('DB_NAME', 'intex_app');   // Der Name Ihrer Datenbank
define('DB_USER', 'intex_user');  // Der Benutzername für die Datenbank
define('DB_PASS', 'IhrSicheresPasswort'); // Das Passwort für den Benutzer
define('DB_PORT', 3306);          // Der Port, meistens 3306

Schritt 2.2: Globale Einstellungen (`config.php`)

Diese Datei steuert das grundlegende Verhalten der Anwendung.

  • INVITE_SECRET_KEY: Dies ist ein geheimer Schlüssel zur Signierung von Links. **Ändern Sie diesen Wert unbedingt** in eine zufällige, lange Zeichenkette, um die Sicherheit zu gewährleisten.
  • PASSWORD_STRENGTH: Legt die Komplexität für neue Passwörter fest ('LOW', 'MEDIUM', 'HIGH').
  • SETUP_CHOICE: Wenn Sie eine gebrandete Version der Anwendung (z.B. "INtex Adressen") verwenden, wird hier der Name des Setups eingetragen. Dies aktiviert das Laden von spezifischen Ressourcen wie Bannern oder Initialisierungs-Skripten.

Schritt 2.3: E-Mail-Versand (`configmail.php`)

Diese Datei enthält die Fallback-Einstellungen für den E-Mail-Versand (z.B. für Registrierungs-Mails oder Passwort-Resets). Die Anwendung nutzt die PHPMailer-Bibliothek.

<?php
// configmail.php

define('MAIL_HOST', 'smtp.ihr-provider.de');
define('MAIL_USERNAME', 'ihre-email@adresse.de');
define('MAIL_PASSWORD', 'IhrEmailPasswort');
define('MAIL_PORT', 587);
define('MAIL_ENCRYPTION', 'tls'); // oder 'ssl'

Hinweis: Diese globalen Einstellungen können von benutzerspezifischen Einstellungen im Menü "Einstellungen" -> "Präferenzen" überschrieben werden, was für den mandantenfähigen Betrieb entscheidend ist.

Schritt 2.4: Setup-Ordner (z.B. `setup_adressen/`)

Wenn in der `config.php` ein `SETUP_CHOICE` definiert ist, sucht die Anwendung nach einem entsprechenden Ordner (z.B. `setup_adressen`). Dieser Ordner kann zwei wichtige Dateien enthalten:

  • banner.jpg: Ein Hintergrundbild für die Login-Seite, um der Anwendung ein individuelles Aussehen zu geben.
  • initialisierung.php: Ein Skript, das **einmalig** ausgeführt wird, wenn sich der erste Benutzer eines neuen Teams anmeldet. Es wird typischerweise verwendet, um vordefinierte Tabellen-Templates für dieses Team zu kopieren und so die Anwendung mit einer fertigen Struktur zu initialisieren.

Abschließende Schritte & FAQ

Nachdem Sie alle Konfigurationsdateien gespeichert haben, rufen Sie die Anwendung in Ihrem Browser auf. Sie sollten nun die Login- oder Registrierungsseite sehen. Herzlichen Glückwunsch, die Installation ist abgeschlossen!

Häufige Fehler und Lösungen (FAQ)

Dies ist das häufigste Problem bei der Erstinstallation. Überprüfen Sie die Zugangsdaten in Ihrer configdb.php-Datei. Stellen Sie sicher, dass Host, Datenbankname, Benutzer und Passwort exakt mit den Daten aus Schritt 1.1 übereinstimmen. Prüfen Sie auch, ob Ihr Datenbankserver läuft.

Dies deutet darauf hin, dass das Datenbank-Schema nicht korrekt importiert wurde (Schritt 1.2). Überprüfen Sie in Ihrem Datenbank-Tool, ob alle Tabellen (user, custom_tables etc.) vorhanden sind. Führen Sie den SQL-Import bei Bedarf erneut in die leere Datenbank aus.

Dies passiert oft, wenn nicht alle Dateien und Ordner korrekt auf den Server kopiert wurden. Stellen Sie sicher, dass der node_modules-Ordner (enthält Bootstrap und Font Awesome) und der media-Ordner vorhanden sind. Prüfen Sie auch, ob eine .htaccess-Datei (falls vorhanden) mitkopiert wurde, da diese für das URL-Routing wichtig sein kann.

Der Webserver-Prozess benötigt Schreibrechte auf bestimmte Verzeichnisse. Stellen Sie sicher, dass der Ordner /files/ und seine Unterordner für den Webserver beschreibbar sind. Auf Linux-Systemen können Sie dies oft mit Befehlen wie chmod -R 775 files und chown -R www-data:www-data files erreichen (der Benutzer/die Gruppe www-data kann je nach System variieren).

Ihrer PHP-Installation fehlen notwendige Erweiterungen (Extensions). Stellen Sie sicher, dass die folgenden Erweiterungen in Ihrer php.ini-Datei aktiviert sind:
  • pdo_mysql (für die Datenbankverbindung)
  • json (für die Verarbeitung von JSON-Daten)
  • mbstring (für die korrekte Verarbeitung von Zeichenketten)
  • openssl (wird oft von PHPMailer für sichere Verbindungen benötigt)
Starten Sie Ihren Webserver nach Änderungen an der php.ini neu.

Sie haben die Installation und Konfiguration gemeistert. Viel Erfolg mit Ihrer neuen Anwendung!