Dieses Tutorial zeigt Ihnen, wie Sie NextCloud auf Ubuntu 20.04 LTS mit Apache-Webserver installieren.
Was ist NextCloud?
NextCloud ist eine kostenlose, selbst gehostete Open-Source-Cloud-Speicherlösung. Es ist funktional ähnlich wie Dropbox. Proprietäre Cloud-Speicherlösungen (Dropbox, Google Drive usw.) sind praktisch, haben aber ihren Preis:Sie können zum Sammeln persönlicher Daten verwendet werden, da Ihre Dateien auf ihren Computern gespeichert werden. Wer sich Sorgen um die Privatsphäre macht, kann auf NextCloud ausweichen, die man auf seinem privaten Heimserver oder auf einem Virtual Private Server (VPS) installieren kann. Sie können Ihre Dateien über NextCloud auf Ihren Server hochladen und diese Dateien dann mit Ihrem Desktop-Computer, Laptop oder Smartphone synchronisieren. So haben Sie die volle Kontrolle über Ihre Daten.
NextCloud-Funktionen
- Kostenlos und Open-Source
- Ende-zu-Ende-Verschlüsselung, d. h. Dateien können auf Client-Geräten verschlüsselt werden, bevor sie auf den Server hochgeladen werden. Selbst wenn jemand Ihren Server stiehlt, kann er Ihre Dateien nicht lesen.
- Kann in eine Online-Office-Suite (Collobora Online, OnlyOffice) integriert werden, sodass Sie Ihre doc-, ppt- und xls-Dateien direkt von NextCloud aus erstellen und bearbeiten können.
- Der App Store enthält Hunderte von Apps zur Erweiterung der Funktionalität (wie Kalender-App, Kontakte-App, Notizen-App, Videokonferenz-App usw.).
- Der Sync-Client ist für Linux, macOS, Windows, iOS und Android verfügbar.
Voraussetzungen
NextCloud ist in der Programmiersprache PHP geschrieben. Um diesem Tutorial zu folgen, müssen Sie zuerst den LAMP-Stack auf Ubuntu 20.04 installieren . Wenn Sie dies noch nicht getan haben, sehen Sie sich bitte das folgende Tutorial an.
- So installieren Sie LAMP Stack (Apache, MariaDB, PHP7.4-FPM) unter Ubuntu 20.04
Sie können NextCloud auf Ihrem Heimserver oder einem VPS (Virtual Private Server) installieren. Sie benötigen auch einen Domänennamen, damit Sie später HTTPS aktivieren können, um den HTTP-Verkehr zu verschlüsseln. Ich habe meinen Domainnamen bei NameCheap registriert, weil der Preis niedrig ist und Whois-Datenschutz lebenslang kostenlos ist. Nextcloud kann ohne Domainnamen installiert werden, aber es macht wirklich keinen Sinn, wenn Sie die HTTP-Verbindung nicht verschlüsseln, um Schnüffeln vorzubeugen. Ich empfehle den Kauf eines Domainnamens, wenn Sie wirklich an Serversoftware basteln und sie voll ausschöpfen möchten.
Lassen Sie uns jetzt NextCloud installieren.
Schritt 1:Laden Sie NextCloud auf Ubuntu 20.04 herunter
Melden Sie sich bei Ihrem Ubuntu 20.04-Server an. Laden Sie dann das NextCloud-Zip-Archiv auf Ihren Server herunter. Die neueste stabile Version ist zum Zeitpunkt des Schreibens dieses Artikels 21.0.1. Möglicherweise müssen Sie die Versionsnummer ändern. Gehen Sie zu https://nextcloud.com/install und klicken Sie auf download for server
Schaltfläche, um die neueste Version anzuzeigen.
Sie können den folgenden Befehl ausführen, um es auf Ihren Server herunterzuladen.
wget https://download.nextcloud.com/server/releases/nextcloud-21.0.1.zip
Sie können immer das obige URL-Format verwenden, um NextCloud herunterzuladen. Wenn eine neue Version herauskommt, ersetzen Sie einfach 21.0.1
mit der neuen Versionsnummer.
Entpacken Sie das Archiv nach dem Herunterladen mit unzip
.
sudo apt install unzipsudo unzip nextcloud-21.0.1.zip -d /var/www/
Das -d
Option gibt das Zielverzeichnis an. NextCloud-Webdateien werden nach /var/www/nextcloud/
extrahiert . Dann müssen wir den Eigentümer dieses Verzeichnisses auf www-data
ändern damit der Webserver (Apache) in dieses Verzeichnis schreiben kann.
sudo chown www-data:www-data /var/www/nextcloud/ -R
Schritt 2:Erstellen Sie eine Datenbank und einen Benutzer für Nextcloud im MariaDB-Datenbankserver
Melden Sie sich mit dem folgenden Befehl beim MariaDB-Datenbankserver an. Da MariaDB jetzt unix_socket
verwendet Plugin für die Benutzeranmeldung zur Authentifizierung müssen Sie das MariaDB-Root-Passwort nicht eingeben. Wir müssen nur mysql
voranstellen Befehl mit sudo
.
sudo mysql
Erstellen Sie dann eine Datenbank für Nextcloud. Dieses Tutorial nennt die Datenbank nextcloud. Sie können einen beliebigen Namen verwenden.
Datenbank nextcloud erstellen;
Erstellen Sie den Datenbankbenutzer. Auch hier können Sie Ihren bevorzugten Namen für diesen Benutzer verwenden. Ersetzen Sie your-password
mit Ihrem bevorzugten Passwort.
Erstellen Sie den Benutzer nextclouduser@localhost, der durch „Ihr Passwort“ identifiziert wird;
Gewähren Sie diesem Benutzer alle Berechtigungen auf der nextcloud
Datenbank.
gewähre nextclouduser@localhost, identifiziert durch „dein-passwort“, alle Privilegien auf nextcloud.*
Berechtigungen leeren und beenden.
Privilegien leeren;exit;
Schritt 3:Erstellen Sie einen virtuellen Apache-Host für Nextcloud
Erstellen Sie eine nextcloud.conf
Datei in /etc/apache2/sites-available/
Verzeichnis, mit einem Befehlszeilen-Texteditor wie Nano.
sudo nano /etc/apache2/sites-available/nextcloud.conf
Kopieren Sie den folgenden Text und fügen Sie ihn in die Datei ein. Ersetzen Sie nextcloud.example.com
mit Ihrer eigenen bevorzugten Subdomain. Vergessen Sie nicht, in Ihrem DNS-Zonen-Editor einen DNS-A-Eintrag für diese Subdomain zu erstellen. Wenn Sie keinen echten Domainnamen haben, empfehle ich, zu NameCheap zu gehen, um einen zu kaufen. Der Preis ist niedrig und sie bieten Whois-Datenschutz lebenslang kostenlos.
DocumentRoot „/var/www/nextcloud“ ServerName nextcloud.example.com ErrorLog ${APACHE_LOG_DIR}/nextcloud.error CustomLog ${APACHE_LOG_DIR}/nextcloud.access kombiniert Erfordert alle erteilten Optionen FollowSymlinks MultiViews AllowOverride All Dav off SetEnv HOME /var/www/nextcloud SetEnv HTTP_HOME /var/www/nextcloud Satisfy Any
Speichern und schließen Sie die Datei. (Um eine Datei im Nano-Texteditor zu speichern, drücken Sie Ctrl+O
, und drücken Sie dann Enter
bestätigen. Drücken Sie zum Beenden Ctrl+X
.)
Aktivieren Sie dann diesen virtuellen Host.
sudo a2ensite nextcloud.conf
Führen Sie den folgenden Befehl aus, um die erforderlichen Apache-Module zu aktivieren.
sudo a2enmod rewrite headers env dir mime setenvif ssl
Testen Sie dann die Apache-Konfiguration.
sudo apache2ctl -t
Wenn die Syntax in Ordnung ist, laden Sie Apache neu, damit die Änderungen wirksam werden.
sudo systemctl reset apache2
Schritt 4:PHP-Module installieren und aktivieren
Führen Sie die folgenden Befehle aus, um PHP-Module zu installieren, die von NextCloud benötigt oder empfohlen werden.
sudo apt install imagemagick php-imagick libapache2-mod-php7.4 php7.4-common php7.4-mysql php7.4-fpm php7.4-gd php7.4-json php7.4-curl php7.4 -zip php7.4-xml php7.4-mbstring php7.4-bz2 php7.4-intl php7.4-bcmath php7.4-gmp
Laden Sie Apache neu, um diese Module zu verwenden.
sudo systemctl apache2 neu laden
Schritt 5:HTTPS aktivieren
Jetzt können Sie in Ihrem Webbrowser auf den Nextcloud-Webinstallationsassistenten zugreifen, indem Sie den Domänennamen für Ihre Nextcloud-Installation eingeben.
nächstecloud.example.com
Wenn die Webseite nicht geladen werden kann, müssen Sie wahrscheinlich Port 80 in der Firewall öffnen.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
Und auch Port 443.
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT
Bevor wir sensible Informationen eingeben, sollten wir eine sichere HTTPS-Verbindung auf Nextcloud aktivieren. Wir können ein kostenloses TLS-Zertifikat von Let’s Encrypt erhalten. Installieren Sie den Let’s Encrypt-Client (certbot) aus dem Ubuntu 20.04-Repository.
sudo apt install certbot python3-certbot-apache
Python3-certbot-apache
ist das Apache-Plugin. Führen Sie als Nächstes den folgenden Befehl aus, um ein kostenloses TLS-Zertifikat mit dem Apache-Plugin zu erhalten.
sudo certbot --apache --agree-tos --redirect --staple-ocsp --email [email protected] -d nextcloud.example.com
Wo:
- –apache2 :Apache Authenticator und Installer verwenden
- –stimme zu :Nutzungsbedingungen von Let’s Encrypt akzeptieren
- –Weiterleitung :Erzwingen Sie HTTPS, indem Sie eine 301-Weiterleitung hinzufügen.
- –staple-ocsp :OCSP-Heften aktivieren.
- –E-Mail :E-Mail, die für die Registrierung und den Wiederherstellungskontakt verwendet wird.
- -d Flag folgt eine durch Kommas getrennte Liste von Domänennamen. Sie können bis zu 100 Domainnamen hinzufügen.
Sie werden gefragt, ob Sie E-Mails von EFF (Electronic Frontier Foundation) erhalten möchten. Nachdem Sie J oder N ausgewählt haben, wird Ihr TLS-Zertifikat automatisch bezogen und für Sie konfiguriert, was durch die folgende Meldung angezeigt wird.
Ich habe festgestellt, dass Certbot den HSTS-Header nicht automatisch in die Apache-Konfigurationsdatei für Nextcloud einfügen kann. Wenn Sie HSTS (HTTP Strict Transport Security) aktivieren möchten, bearbeiten Sie die Datei.
sudo nano /etc/apache2/sites-enabled/nextcloud-le-ssl.conf
Wir können dann die folgende Zeile in den SSL-Serverblock einfügen, um den HSTS-Header zu aktivieren.
Header setzt immer Strict-Transport-Security "max-age=31536000"
Wie unten.
Speichern und schließen Sie die Datei. Geben Sie dann Apache-Konfigurationen per SMS ein.
sudo apache2ctl -t
Wenn der Test erfolgreich ist, laden Sie Apache neu, damit die Änderung wirksam wird.
sudo systemctl apache2 neu laden
Die obige Konfiguration erhält beim SSL-Test eine A+-Punktzahl.
Schritt 6:Beenden Sie die Installation in Ihrem Webbrowser
Jetzt können Sie über eine HTTPS-Verbindung auf den Nextcloud-Webinstallationsassistenten zugreifen.
https://nextcloud.example.com
Um die Installation abzuschließen, müssen Sie ein Administratorkonto erstellen, den Pfad des Nextcloud-Datenordners eingeben und die Datenbankdetails eingeben, die Sie in Schritt 2 erstellt haben. Sie können den Standard localhost
verwenden als Host-Adresse, oder Sie können localhost:3306
eingeben , da MariaDB auf Port 3306 lauscht.
Im Datenordner werden die Dateien der Benutzer gespeichert. Aus Sicherheitsgründen ist es am besten, das Datenverzeichnis außerhalb des Nextcloud-Webroot-Verzeichnisses zu platzieren. Anstatt also Benutzerdateien unter /var/www/nextcloud/data/
zu speichern , können wir es in /var/www/nextcloud-data
ändern . die mit folgendem Befehl erstellt werden kann:
sudo mkdir /var/www/nextcloud-data
Stellen Sie dann sicher, dass der Apache-Benutzer (www-data
) hat Schreibrechte für das Datenverzeichnis.
sudo chown www-data:www-data /var/www/nextcloud-data -R
Klicken Sie auf Finish Setup
klicken, sehen Sie die Weboberfläche von Nextcloud. Herzlichen Glückwunsch! Sie können es als Ihren privaten Cloud-Speicher verwenden.
So richten Sie die NextCloud-E-Mail-Benachrichtigung ein
Wenn Ihre NextCloud-Instanz von mehr als einer Person verwendet wird, ist es wichtig, dass Ihr NextCloud-Server Transaktions-E-Mails senden kann, z. B. E-Mails zum Zurücksetzen des Passworts. Zunächst sollten Sie eine E-Mail-Adresse für Ihr eigenes Konto festlegen. Gehen Sie zu Settings
-> Personal Info
und legen Sie eine E-Mail-Adresse für Ihr Konto fest.
Gehen Sie dann zu Einstellungen -> Grundeinstellungen . Sie finden die E-Mail-Server-Einstellungen. Es gibt zwei Sendemodi:sendmail
und smtp
. Sie können den sendmail
wählen -Modus, wenn auf Ihrem NextCloud-Host ein SMTP-Server ausgeführt wird.
Wenn Sie einen SMTP-Server verwenden möchten, der auf einem anderen Host läuft, wählen Sie smtp
Modus und geben Sie die Adresse des SMTP-Servers und die Anmeldedaten wie unten ein. Wählen Sie STARTTLS für die Verschlüsselung.
Wie Sie einen E-Mail-Server einrichten, erfahren Sie im folgenden Tutorial. Hinweis dass ich dringend empfehle, den iRedMail-Mailserver auf einem frischen, sauberen Betriebssystem auszuführen. Die Installation von iRedMail auf einem Betriebssystem mit anderen Webanwendungen kann fehlschlagen und wahrscheinlich vorhandene Anwendungen beschädigen.
- So richten Sie mit iRedMail ganz einfach einen voll funktionsfähigen Mailserver unter Ubuntu 20.04 ein
So setzen Sie das Nextcloud-Benutzerpasswort über die Befehlszeile zurück
Wenn Sie das Passwort Ihres Administratorkontos verloren und keine E-Mail-Zustellung in Nextcloud eingerichtet haben, müssen Sie das Passwort zurücksetzen, indem Sie den folgenden Befehl auf Ihrem Server ausführen. Ersetzen Sie nextcloud_username
mit Ihrem echten Benutzernamen.
sudo -u www-data php /var/www/nextcloud/occ user:resetpassword nextcloud_username
Es gibt auch andere Befehle, die Sie möglicherweise nützlich finden. Verfügbare Befehle auflisten mit:
sudo -u www-data php /var/www/nextcloud/occ
oder
sudo -u www-data php /var/www/nextcloud/console.php
So verschieben Sie das Datenverzeichnis
Falls Sie das NextCloud-Datenverzeichnis verschieben müssen, gibt es 4 Schritte, um dies zu erreichen. Zuerst müssen Sie den cp
verwenden Befehl, um das Datenverzeichnis in das neue Verzeichnis zu kopieren. Der Einhängepunkt meiner externen Festplatte ist beispielsweise /media/linuxbabe/b43e4eea-9796-4ac6-9c48-2bcaa46353731
. Ich erstelle das neue Datenverzeichnis auf der externen Festplatte.
sudo mkdir /media/linuxbabe/b43e4eea-9796-4ac6-9c48-2bcaa46353731/nextcloud-data/
Dann kopiere ich das ursprüngliche Datenverzeichnis in das neue Datenverzeichnis. -R
Flag bedeutet, dass der Kopiervorgang rekursiv ist.
sudo cp /var/www/nextcloud-data/* /media/linuxbabe/b43e4eea-9796-4ac6-9c48-2bcaa46353731/nextcloud-data/ -R
Sie müssen auch die .ocdata
kopieren Datei.
sudo cp /var/www/nextcloud-data/.ocdata /media/linuxbabe/b43e4eea-9796-4ac6-9c48-2bcaa46353731/nextcloud-data/
Als nächstes müssen Sie www-data
festlegen (Apache-Benutzer) als Eigentümer.
sudo chown www-data:www-data /media/linuxbabe/b43e4eea-9796-4ac6-9c48-2bcaa46353731/nextcloud-data/ -R
Zuletzt müssen Sie die config.php
bearbeiten Datei.
sudo nano /var/www/nextcloud/config/config.php
Suchen Sie die folgende Zeile und ändern Sie den Wert von datadirectory
.
'datadirectory' => '/var/www/nextcloud-data',
Speichern und schließen Sie die Datei. Laden Sie die NextCloud-Webseite neu und Sie sind fertig.
Schritt 7:Erhöhen Sie das PHP-Speicherlimit
Das standardmäßige PHP-Speicherlimit beträgt 128 MB. NextCloud empfiehlt 512 MB für eine bessere Leistung. Um das PHP-Speicherlimit zu ändern, bearbeiten Sie die php.ini Datei.
sudo nano /etc/php/7.4/apache2/php.ini
Finden Sie die folgende Zeile. (Zeile 409)
memory_limit =128M
Ändern Sie den Wert.
Speicherlimit =512 MB
Speichern und schließen Sie die Datei. Alternativ können Sie den folgenden Befehl ausführen, um den Wert zu ändern, ohne die Datei manuell zu öffnen.
sudo sed -i 's/memory_limit =128M/memory_limit =512M/g' /etc/php/7.4/apache2/php.ini
Laden Sie dann Apache neu, damit die Änderungen wirksam werden.
sudo systemctl apache2 neu laden
Wenn Ihr Server die /etc/php7.4/fpm/php.ini
hat -Datei, das heißt, auf Ihrem Server läuft auch PHP-FPM. Ich empfehle, das memory_limit
zu ändern auch in PHP-FPM.
sudo nano /etc/php/7.4/fpm/php.ini
Suchen Sie das memory_limit
Parameter und ändern Sie den Wert. Laden Sie nach dem Speichern der Datei PHP-FPM neu, damit die Änderung wirksam wird.
sudo systemctl reload php7.4-fpm
Schritt 8:Redis Cache für NextCloud konfigurieren
Wenn Sie zu Ihren NextCloud-Einstellungen gehen -> Übersicht Seite wird möglicherweise die folgende Warnung angezeigt:
Es wurde kein Speicher-Cache konfiguriert. Um Ihre Leistung zu verbessern, konfigurieren Sie bitte einen Memcache, falls verfügbar.
Wir werden das Speicher-Caching für nextCloud mithilfe von Redis aktivieren. Führen Sie den folgenden Befehl aus, um den Redis-Server aus dem Ubuntu-Repository zu installieren.
sudo apt install redis-server
Sie können die Version überprüfen mit:
redis-server -v
Beispielausgabe:
Redis-Server v=5.0.7 sha=00000000:0 malloc=jemalloc-5.2.1 bits=64 build=636cde3b5c7a3923
Jetzt können wir prüfen, ob der Redis-Server läuft.
systemctl status redis
Hinweis:Wenn der obige Befehl nicht sofort beendet wurde, können Sie die Q-Taste drücken, um die Kontrolle über das Terminal zurückzugewinnen.
Aus dem obigen Screenshot können wir sehen, dass es läuft und der Autostart aktiviert ist. Wenn es aus irgendeinem Grund nicht läuft, führen Sie den folgenden Befehl aus:
sudo systemctl start redis-server
Und wenn der automatische Start beim Booten nicht aktiviert ist, können Sie ihn mit dem folgenden Befehl aktivieren:
sudo systemctl enable redis-server
Um Redis als Cache für nextCloud zu konfigurieren, müssen wir die PHP-Erweiterung für die Schnittstelle zu Redis installieren.
sudo apt install php-redis
Überprüfen Sie, ob die Erweiterung aktiviert ist.
php --ri redis
Wir können sehen, dass die Redis-Erweiterung aktiviert ist. Wenn es nicht aktiviert ist, führen Sie den folgenden Befehl aus:
sudo phpenmod redis
Möglicherweise müssen Sie Apache auch neu laden, wenn die Redis-Erweiterung immer noch nicht aktiviert ist.
sudo systemctl apache2 neu laden
Bearbeiten Sie als Nächstes die nextCloud-Konfigurationsdatei.
sudo nano /var/www/nextcloud/config/config.php
Fügen Sie die folgenden Zeilen über der Endung );
hinzu Linie.
'memcache.distributed' => '\OC\Memcache\Redis','memcache.local' => '\OC\Memcache\Redis','memcache.locking' => '\OC\Memcache\Redis' ,'redis' => array( 'host' => 'localhost', 'port' => 6379, ),
Speichern und schließen Sie die Datei. Starten Sie dann Apache und PHP-FPM neu.
sudo systemctl reset apache2 php7.4-fpm
Gehen Sie nun zu den NextCloud-Einstellungen -> Übersicht Seite erneut aufrufen und die Webseite aktualisieren, sollte die Warnung zum Zwischenspeichern des Speichers verschwunden sein.
Fehlende Indizes hinzufügen
Wenn Sie die folgende Meldung in den NextCloud-Einstellungen sehen -> Übersicht Seite,
Der Datenbank fehlen einige Indizes. Da das Hinzufügen von Indizes bei großen Tabellen einige Zeit in Anspruch nehmen konnte, wurden sie nicht automatisch hinzugefügt.
Dann müssen Sie diese Indizes manuell hinzufügen. Wechseln Sie in das Nextcloud-Webroot-Verzeichnis.
cd /var/www/nextcloud/
Führen Sie den folgenden Befehl aus, um Indizes zur Nextcloud-Datenbank hinzuzufügen.
sudo -u www-data php occ db:add-missing-indices
Wenn Sie jetzt die NextCloud-Einstellungen aktualisieren -> Übersicht Seite sollte die Warnung vor fehlenden Indexen verschwunden sein.
Umwandlung in Big Int
Wenn Sie die folgende Meldung in den NextCloud-Einstellungen sehen -> Übersicht Seite,
Bei einigen Spalten in der Datenbank fehlt die Konvertierung in big int. Da das Ändern von Spaltentypen bei großen Tabellen einige Zeit in Anspruch nehmen kann, wurden sie nicht automatisch geändert.
Dann müssen Sie den Spaltentyp manuell ändern. Wechseln Sie in das Nextcloud-Webroot-Verzeichnis.
cd /var/www/nextcloud/
Versetzen Sie Ihre Nextcloud in den Wartungsmodus, um Benutzer daran zu hindern, sich anzumelden und Änderungen vorzunehmen.
sudo -u www-data php occ maintenance:mode --on
Führen Sie dann den folgenden Befehl aus, um den Spaltentyp zu ändern.
sudo -u www-data php occ db:convert-filecache-bigint
Wenn dies erledigt ist, schalten Sie den Wartungsmodus aus.
sudo -u www-data php occ maintenance:mode --off
Wenn Sie jetzt die NextCloud-Einstellungen aktualisieren -> Übersicht Seite sollte die Warnung vor Big Int verschwunden sein.
So installieren Sie den NextCloud-Client auf Ubuntu 20.04 Desktop
Führen Sie die folgenden Befehle auf dem Ubuntu 20.04-Desktop aus, um den Client aus dem Standard-Repository zu installieren.
sudo apt install nextcloud-client
NextCloud-Client auf Ubuntu 20.04
Client-Software für macOS, Windows, Android und iOS finden Sie auf der Download-Seite von Nextcloud.
So aktivieren Sie OnlyOffice/Collabora Online
Standardmäßig wird Nextcloud mit Unterstützung für OnlyOffice geliefert, einer Online-Office-Suite, mit der Sie Ihre doc-, ppt- und xls-Dateien direkt von NextCloud aus bearbeiten können. Wir müssen nur eine App installieren, um diese Funktion zu nutzen. Gehen Sie zu Nextcloud Apps
-> Office & Text
. Suchen und aktivieren Sie den community document server
App.
Wenn Sie jetzt in Nextcloud auf die Schaltfläche „Hinzufügen“ (+) klicken, können Sie Word-, Tabellenkalkulations- und Präsentationsdokumente direkt von Ihrem Nextcloud-Server aus erstellen.
Ich fand jedoch, dass diese App nicht sehr zuverlässig ist. Und die Community-Edition erlaubt höchstens 20 Benutzer. Sie müssen eine Enterprise Edition erwerben, wenn Sie mehr als 20 Benutzer haben. Es gibt eine andere auf LibreOffice basierende Open-Source-Online-Office-Suite namens Collabora Online, die die gleiche Funktionalität hat, aber ohne die Begrenzung der Anzahl der Benutzer. Sie können den folgenden Artikel lesen, um es mit Nextcloud zu integrieren.
- Integrieren Sie Collabora Online mit Nextcloud auf Ubuntu mit Docker
Erhöhen Sie die Größenbeschränkung für Upload-Dateien
Wenn Sie das Apache PHP-Modul zum Ausführen von PHP-Skripten verwenden, gibt es keine Größenbeschränkung für Upload-Dateien. Wenn Sie PHP-FPM zum Ausführen von PHP-Skripts verwenden, müssen Sie die Dateigrößenbeschränkung ändern. Die standardmäßige maximale Dateigröße für das Hochladen in PHP-FPM beträgt 2 MB. Um die Upload-Größenbeschränkung zu erhöhen, bearbeiten Sie die PHP-Konfigurationsdatei.
sudo nano /etc/php/7.4/fpm/php.ini
Suchen Sie die folgende Zeile (Zeile 846).
upload_max_filesize =2M
Ändern Sie den Wert wie folgt:
upload_max_filesize =1024M
Speichern und schließen Sie die Datei. Alternativ können Sie den folgenden Befehl ausführen, um den Wert zu ändern, ohne die Datei manuell zu öffnen.
sudo sed -i 's/upload_max_filesize =2M/upload_max_filesize =1024M/g' /etc/php/7.4/fpm/php.ini
Starten Sie dann PHP-FPM neu.
sudo systemctl restart php7.4-fpm
HTTP/2-Protokoll aktivieren
Das HTTP/2-Protokoll kann die Ladegeschwindigkeit von Seiten erheblich verbessern. Sie können die folgende Anleitung lesen, um das HTTP/2-Protokoll auf Apache zu aktivieren.
- Aktivieren des HTTP/2-Protokolls mit Apache unter Ubuntu 20.04
Lokalen DNS-Eintrag hinzufügen
Es wird empfohlen, die Datei /etc/hosts
zu bearbeiten Datei auf Ihrem Nextcloud-Server und fügen Sie den folgenden Eintrag hinzu, damit Nextcloud selbst nicht das öffentliche DNS abfragen muss, was die Gesamtstabilität verbessern kann. Wenn Ihr Nextcloud-Server die Datei nextcloud.example.com
nicht auflösen kann hostname, dann kann es zu einem 504-Gateway-Timeout kommen Fehler.
127.0.0.1 lokaler Host nextcloud.example.com
Eine IP-Adresse in /etc/hosts
Datei kann mehrere Hostnamen haben, wenn Sie also andere Anwendungen auf derselben Box installiert haben, können Sie auch andere Hostnamen oder Subdomains in derselben Zeile wie folgt hinzufügen:
127.0.0.1 localhost focus ubuntu nextcloud.example.com collabora.example.com
Verwenden von Cron zum Ausführen von Hintergrundjobs
Standardmäßig verwendet Nextcloud AJAX, um bei jedem Laden einer Seite eine Aufgabe auszuführen. Sie können den effizienteren Cron-Dienst des Systems verwenden, um Hintergrundjobs auszuführen. Gehen Sie zu den Nextcloud-Einstellungen -> Grundeinstellungen und wählen Sie Cron .
Bearbeiten Sie als Nächstes die www-data
Crontab-Datei des Benutzers.
sudo -u www-data crontab -e
Fügen Sie dieser Datei die folgende Zeile hinzu, damit der Cron-Job alle 5 Minuten ausgeführt wird.
*/5 * * * * php7.4 -f /var/www/nextcloud/cron.php
Speichern und schließen Sie die Datei.
Tipps zur Fehlerbehebung
Wenn Fehler auftreten, können Sie eine der folgenden Protokolldateien überprüfen, um herauszufinden, was falsch ist.
- Apache-Fehlerprotokoll:
/var/log/apache2/error.log
- Apache-Fehlerprotokoll für den virtuellen Nextcloud-Host:
/var/log/apache2/nextcloud.error
- Nextcloud-Anwendungsprotokoll:
/var/www/nextcloud/data/nextcloud.log
Zum Beispiel hatte ich einmal einen „Internal Server Error
” auf meiner Nextcloud-Instanz und die /var/log/nginx/nextcloud.error
Datei hat mir das gesagt
FastCGI sendete in stderr:"PHP message:PHP Fatal error:Uncaught OC\HintException:[0]:Memcache \OC\Memcache\Redis not available for local cache (Ist das passende PHP-Modul installiert und aktiviert?)Da ich das ppa:ondrej/php-PPA auf meinem Ubuntu-Server verwendet habe, stellte sich heraus, dass ich auch
php7.4-redis
installieren muss zusätzlich zuphp-redis
Paket.Wenn Sie die folgende Fehlermeldung in der
nextcloud.log
sehen Datei, können Sie sie ignorieren.Konnte keinen Host in https:///data/htaccesstest.txt erkennenUpgrade von Nextcloud
Es ist wichtig, Ihren Nextcloud-Server mit den neuesten Sicherheits- und Fehlerbehebungen auf dem neuesten Stand zu halten. Lesen Sie das folgende Tutorial, um zu erfahren, wie Sie Nextcloud aktualisieren.
- 2 Möglichkeiten zum Upgrade von Nextcloud [Befehlszeile und GUI]