From b79d3b2154c732c11ec0abe7208fee75e0d970eb Mon Sep 17 00:00:00 2001 From: Thomas Dannenberg Date: Sat, 4 Oct 2025 19:06:54 +0000 Subject: [PATCH] Kapitel 6/Free Rohtext.md aktualisiert --- Kapitel 6/Free Rohtext.md | 231 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 231 insertions(+) diff --git a/Kapitel 6/Free Rohtext.md b/Kapitel 6/Free Rohtext.md index 311b6b6..6f0a3ac 100644 --- a/Kapitel 6/Free Rohtext.md +++ b/Kapitel 6/Free Rohtext.md @@ -932,3 +932,234 @@ Unter **Einstellungen → Verwaltung → Grundlegende Einstellungen** sollte der Damit ist der automatisierte Hintergrunddienst aktiv. Nextcloud führt ab jetzt alle Aufgaben regelmäßig und ohne manuelles Eingreifen aus. +### Feinschliff & Optimierung + +Nach der Grundinstallation zeigt das Admin-Panel von Nextcloud häufig mehrere Hinweise an. +Das sind keine Fehler, sondern Empfehlungen, um Stabilität und Kompatibilität zu verbessern. +Wir gehen sie jetzt einzeln durch, erklären den Hintergrund und zeigen die exakten Schritte. + +#### MIME-Type für `.mjs` aktivieren + +Nach der Installation erscheint oft der Hinweis: + +> „Ihr Webserver liefert .mjs-Dateien nicht mit dem JavaScript MIME-Typ.“ + +Das bedeutet, dass moderne JavaScript-Dateien (`.mjs`) nicht korrekt als JavaScript erkannt werden. +Dadurch funktionieren einige Apps wie Kalender oder Talk nicht richtig. + +1. Öffne die Nginx-Konfiguration: + ```bash + nano /etc/nginx/sites-available/nextcloud.conf + ``` +2. Suche den Block `server { … }`. + Direkt unter der Zeile `server_name cloud.DEINE-DOMAIN.tld;` fügst du Folgendes ein: + ```nginx + types { application/javascript mjs; } + ``` + Diese Zeile sorgt dafür, dass `.mjs`-Dateien den korrekten MIME-Typ erhalten. +3. Speichern mit **Strg + O**, bestätigen mit **Enter**, schließen mit **Strg + X**. +4. Konfiguration prüfen: + ```bash + nginx -t + ``` + Wenn „syntax is ok“ und „test is successful“ erscheint: + ```bash + systemctl reload nginx + ``` + +> [!NOTE] +> Danach sollte der Hinweis im Nextcloud-Adminbereich verschwinden. +> Browser laden `.mjs`-Dateien jetzt korrekt. + +👉 *Screenshot geeignet: Editor mit eingefügtem MIME-Type und erfolgreicher Syntaxprüfung.* + +#### OCM- und OCS-Provider auflösen + +Dieser Hinweis erscheint, wenn Nextcloud keine externen Freigaben (Federation) erkennt. +Die Ursache ist eine fehlende Routen-Definition in Nginx. + +1. Öffne wieder die Datei: + ```bash + nano /etc/nginx/sites-available/nextcloud.conf + ``` +2. Scrolle bis ans Ende des Blocks `server { … }` und füge unterhalb der bestehenden `location`-Einträge ein: + ```nginx + location ~ ^/(?:ocm-provider|ocs-provider)/ { + try_files $uri $uri/ =404; + index index.php; + } + ``` +3. Datei speichern, testen und neu laden: + ```bash + nginx -t && systemctl reload nginx + ``` + +> [!NOTE] +> Dadurch können andere Server und Benutzer wieder Dateien über Federation austauschen. +> Im Admin-Panel sollte der entsprechende Hinweis verschwinden. + +👉 *Screenshot geeignet: geöffnete nextcloud.conf mit neuem Location-Block.* + +#### `.well-known`-Weiterleitungen aktivieren + +Nextcloud nutzt spezielle URLs wie `/.well-known/carddav`, damit Kalender- und Kontakt-Apps (DAV-Clients) automatisch den richtigen Pfad finden. +Fehlt diese Weiterleitung, funktionieren CalDAV, CardDAV und WebFinger nicht. + +1. Öffne erneut die Datei: + ```bash + nano /etc/nginx/sites-available/nextcloud.conf + ``` +2. Füge unterhalb der bestehenden `location`-Einträge diese Zeilen ein: + ```nginx + location = /.well-known/webfinger { return 301 /index.php/.well-known/webfinger; } + location = /.well-known/nodeinfo { return 301 /index.php/.well-known/nodeinfo; } + location ~ ^/.well-known/acme-challenge { default_type "text/plain"; root /var/www/letsencrypt; } + location = /.well-known/carddav { return 301 /remote.php/dav; } + location = /.well-known/caldav { return 301 /remote.php/dav; } + ``` +3. Speichern und prüfen: + ```bash + nginx -t && systemctl reload nginx + ``` +4. Kontrolle mit: + ```bash + curl -I https://cloud.DEINE-DOMAIN.tld/.well-known/carddav + ``` + Wenn `HTTP/1.1 301 Moved Permanently` erscheint, funktioniert die Weiterleitung. + +> [!TIP] +> Ohne diese Weiterleitungen können Kalender- und Kontakte-Apps keine Verbindung herstellen. +> Nach der Änderung verschwindet die Warnung im Admin-Panel. + +👉 *Screenshot geeignet: Terminal mit erfolgreichem curl-Test.* + +#### Debug-Modus deaktivieren + +Der Debug-Modus zeigt zusätzliche Fehlermeldungen und Warnungen, die im Produktivbetrieb nicht nötig sind. +Er sollte immer deaktiviert sein, bevor du die Cloud dauerhaft nutzt. + +1. Öffne die Konfiguration: + ```bash + nano /srv/nextcloud/app/nextcloud/config/config.php + ``` +2. Suche nach einem vorhandenen Eintrag `'debug' => true,` + oder füge am Ende der Liste folgende Zeile hinzu: + ```php + 'debug' => false, + ``` +3. Speichern und schließen. + +> [!NOTE] +> Nach dieser Änderung verschwindet die Warnung „Debug-Modus aktiv“. +> Die Cloud läuft nun mit normalen Log-Einstellungen. + +👉 *Screenshot geeignet: config.php mit deaktiviertem Debug-Modus.* + +#### Wartungsfenster festlegen + +Nextcloud kann Hintergrundaufgaben gebündelt in einem festen Zeitfenster ausführen. +Damit wird die Serverlast gleichmäßig verteilt und störende Prozesse laufen z. B. nachts. + +Führe im Container aus: + +```bash +sudo -u www-data php /srv/nextcloud/app/nextcloud/occ config:system:set maintenance_window_start --value="2" +``` + +Damit beginnt das Wartungsfenster täglich um **2 Uhr morgens**. + +> [!TIP] +> Du kannst den Wert anpassen, z. B. `--value="4"` für 4 Uhr morgens. +> Die Zahl steht für die **Startstunde** des Wartungsfensters in 24-Stunden-Notation. + +👉 *Screenshot geeignet: Terminal mit erfolgreicher OCC-Ausgabe.* + +#### Fehlende Indizes hinzufügen + +In neuen Nextcloud-Versionen erscheinen manchmal Meldungen wie +*„Fehlende Indizes in der Datenbank gefunden“.* +Das betrifft die Geschwindigkeit bei Datenbankabfragen. + +1. Im Container ausführen: + ```bash + sudo -u www-data php /srv/nextcloud/app/nextcloud/occ db:add-missing-indices + ``` +2. Nach wenigen Sekunden meldet Nextcloud, welche Tabellen aktualisiert wurden. + +> [!NOTE] +> Danach ist die Warnung verschwunden und Datenbankabfragen laufen schneller. + +👉 *Screenshot geeignet: Terminal mit Ausgabe „All indices added successfully“.* + +#### Standard-Telefonregion festlegen + +Dieser Hinweis betrifft Telefonnummern in Benutzerprofilen. +Ohne Standard-Region können Nummern ohne Landesvorwahl nicht validiert werden. + +1. Öffne die Datei: + ```bash + nano /srv/nextcloud/app/nextcloud/config/config.php + ``` +2. Ergänze am Ende: + ```php + 'default_phone_region' => 'DE', + ``` +3. Speichern und schließen. + +> [!NOTE] +> Danach akzeptiert Nextcloud auch Telefonnummern ohne Vorwahl als gültig. + +👉 *Screenshot geeignet: config.php mit eingetragener Standard-Region.* + +### Ergebnis + +Nach diesen Schritten ist deine Nextcloud-Installation technisch vollständig optimiert: + +- Keine Warnmeldungen mehr im Admin-Panel +- Stabiler Betrieb ohne Fehlermeldungen +- Externe Freigaben und DAV-Synchronisierung funktionieren +- Datenbank und Webserver laufen effizient und sicher + +👉 *Screenshot geeignet: Admin-Übersicht ohne Warnmeldungen (alle Punkte grün).* + +--- + +## Zusammenfassung & nächste Schritte + +Mit diesem Kapitel hast du eine vollständig funktionsfähige Nextcloud-Instanz eingerichtet – +von der Datenbank über den Webserver bis hin zur sicheren Veröffentlichung über den Proxy. + +Du hast gelernt: + +- wie du einen eigenen Ubuntu-LXC mit aktivierten Sonderfunktionen (Nesting, Keyctl) anlegst +- wie du Nginx, PostgreSQL, Redis und PHP so kombinierst, dass sie perfekt zusammenarbeiten +- wie du Nextcloud manuell installierst und über Nginx Proxy Manager verschlüsselt veröffentlichst +- wie du per Cronjob alle Hintergrundaufgaben automatisch ausführen lässt +- wie du typische Warnmeldungen im Adminbereich Schritt für Schritt beseitigst + +Damit ist der technische Teil abgeschlossen. +Nextcloud läuft stabil, sicher und performant in deinem UCC-System – +und du kannst sie ab jetzt täglich nutzen, um Daten zu synchronisieren, Dateien zu teilen oder Teams zu organisieren. + +> [!TIP] +> Du kannst Nextcloud von allen Geräten aus aufrufen: +> - **Browser:** `https://cloud.DEINE-DOMAIN.tld` +> - **Desktop-App:** über die Nextcloud-App für Windows, macOS oder Linux +> - **Smartphone:** Nextcloud-App aus dem Play Store oder App Store + +> [!NOTE] +> Falls du den Zugriff nur intern erlauben möchtest, kannst du in Nginx Proxy Manager +> einfach eine Access-List mit lokalen IP-Bereichen anlegen. +> So bleibt deine Nextcloud im Heimnetz sichtbar, aber von außen geschützt. + +Als nächstes folgen im Premium-Kapitel erweiterte Funktionen für Komfort und Automatisierung: +- automatisierte Backups der Datenbank und Konfiguration +- sichere Wiederherstellung älterer Versionen +- Integration eines Mailservers für Benachrichtigungen +- Performance-Tuning für Redis, OPcache und PHP +- Optimierte Vorschaugenerierung und Bildverarbeitung mit Imagick + +Damit bringst du deine Cloud auf professionelles Niveau – +aber bleibst jederzeit Herr deiner eigenen Daten. + +👉 *Screenshot geeignet: Übersicht Nextcloud-Dashboard mit aktivierter Synchronisierung und grünem Systemstatus.*