Voraussetzungen

Bevor du den Sync-Server installierst, stelle sicher, dass folgende Anforderungen erfüllt sind:

- PHP 8.0 oder höher - MySQL 5.7+ oder MariaDB 10.3+ - Ein Webserver (Apache oder Nginx) - Eine eigene Domain oder Subdomain (z. B. `sync.meinedomain.de`) - SSL-Zertifikat (empfohlen, z. B. über Let's Encrypt)

Installation

1. Dateien hochladen

Lade das aktuelle Release von der Download-Seite herunter und entpacke die Dateien in das Webverzeichnis deines Servers:

```bash unzip owp-sync-server-latest.zip -d /var/www/sync ```

2. Datenbank einrichten

Erstelle eine neue Datenbank und einen Benutzer für den Sync-Server:

```sql CREATE DATABASE owp_sync CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'owp_user'@'localhost' IDENTIFIED BY 'dein_sicheres_passwort'; GRANT ALL PRIVILEGES ON owp_sync.* TO 'owp_user'@'localhost'; FLUSH PRIVILEGES; ```

3. Konfiguration anpassen

Kopiere die Beispielkonfiguration und passe die Datenbankzugangsdaten an:

```bash cp config.example.php config.php ```

Bearbeite `config.php` und trage deine Datenbankdaten ein:

```php define('DB_HOST', 'localhost'); define('DB_NAME', 'owp_sync'); define('DB_USER', 'owp_user'); define('DB_PASS', 'dein_sicheres_passwort'); ```

4. Domain konfigurieren

Richte deine Domain oder Subdomain so ein, dass sie auf das Installationsverzeichnis zeigt. Bei Apache kannst du einen VirtualHost anlegen:

```apache <VirtualHost *:443> ServerName sync.meinedomain.de DocumentRoot /var/www/sync/public SSLEngine on SSLCertificateFile /etc/letsencrypt/live/sync.meinedomain.de/fullchain.pem SSLCertificateKeyFile /etc/letsencrypt/live/sync.meinedomain.de/privkey.pem </VirtualHost> ```

5. Setup ausführen

Rufe `https://sync.meinedomain.de/setup` im Browser auf. Der Installationsassistent erstellt automatisch alle erforderlichen Datenbanktabellen und legt einen Admin-Benutzer an.

Nächste Schritte

Nach der Installation kannst du die Desktop-App und die BuchNotizApp mit dem Server verbinden. Siehe dazu die Artikel zur Sync-Konfiguration und zur Einrichtung der Mobile App.