4.1 Installation von Nextcloud

Installation auf Apache (Debian & Ubuntu bassiert) #

Zuerst Aktualisieren wir unsere Paketquelle:

apt update && apt upgrade -y

Installieren sie Apache

sudo apt install apache2

Installieren sie folgende Tools:

sudo apt install software-properties-common ca-certificates lsb-release apt-transport-https gpg gnupg gnupg2

PHP Installieren #

Installation auf Debian #

Füge PHP Repository hinzu:

sudo sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' 

Hole den Schlüssel:

wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add - 

Update die Paketquellen:

sudo apt update

Installiere Nun PHP mit den Extensions

apt install php8.2 libapache2-mod-php8.2 php8.2-zip php-dompdf php8.2-xml php8.2-mbstring php8.2-gd php8.2-curl php8.2-imagick libmagickcore-6.q16-6-extra php8.2-intl php8.2-bcmath php8.2-gmp php8.2-cli php8.2-mysql php8.2-zip php8.2-gd  php8.2-mbstring php8.2-curl php8.2-xml php-pear unzip nano php8.2-apcu redis-server ufw php8.2-redis php8.2-smbclient php8.2-ldap php8.2-bz2

Installation auf Ubuntu #

Füge die Paketquelle PHP hinzu:

add-apt-repository ppa:ondrej/php

Update die Paketquell:

apt update

Installiere PHP:

apt install php8.2 libapache2-mod-php8.2 php8.2-zip php-dompdf php8.2-xml php8.2-mbstring php8.2-gd php8.2-curl php8.2-imagick libmagickcore-6.q16-6-extra php8.2-intl php8.2-bcmath php8.2-gmp php8.2-cli php8.2-mysql php8.2-zip php8.2-gd php8.2-mbstring php8.2-curl php8.2-xml php-pear unzip nano php8.2-apcu redis-server ufw php8.2-redis php8.2-smbclient php8.2-ldap php8.2-bz2

Achtung #

Oder Ersetze das 8.2 durch eine Andere Version
BSP:

sudo apt install php7.4
oder
sudo apt install php7.4-extension
oder Installiere jede PHP Extension mit:

sudo apt install php8.2*

PHP Konfigurieren #

Öffne die Konfigurationsdatei von PHP:

nano /etc/php/8.2/apache2/php.ini

—————–In der Liste——————

Ändere Folgende Werte (Mit STRG + W suchen):

memory_limit = 4096
upload_max_filesize = 20G
post_max_size = 20G
date.timezone = Europe/Berlin
output_buffering = Off

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=64
opcache.max_accelerated_files=10000
opcache.memory_consumption=1024
opcache.save_comments=1
opcache.revalidate_freq=1

Drücke STRG + O und danach STRG + X um zu Speichern

MariaDB Installieren #

Installieren sie MariaDB:

sudo apt install mariadb-server

Konfiguirern sie MariaDB mit dem Befehl:

mysql_secure_installation

Erstellen sie eine Datenbank für die Nextcloud #

Öffnen sie Mysql mit dem Befehl:

mysql

Erstellen sie eine Datenbank (Ersetzen sie myname durch ihren Wunsch Namen für die Datenbank):

CREATE DATABASE myname;

Erstellen sie einen Benutzer (Ersetzen sie myuser durch ihren Wunsch Benutzer Namen. || Ersetzen sie password_here durch ein Sicheres Passwort):

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'password_here';

Erlauben sie den Zugriff auf die Datenbank (Ersetzen sie myname und myuser durch ihre Angaben die sie oben Erstellt haben):

GRANT ALL PRIVILEGES ON myname.* TO ‚myuser’@’localhost‘;

Speichern und Verlassen:

FLUSH PRIVILEGES;
EXIT;

Nextcloud Herunterladen #

Downloaden sie die Letzte Version von Nextcloud und Entpacken sie diese:

cd /tmp && wget https://download.nextcloud.com/server/releases/latest.zip
unzip latest.zip

Erstellen sie ein Ordner in /var/www (Ersetzen sie example.com druch ihren Namen !! Bei mehreren Webseiten ist es empfehlenswert die Ornder nach der Adresse zu bennen):

mkdir /var/www/example.com

Gehen sie in den Ornder nextcloud:

cd nextcloud

Kopieren sie den Inhalt in ihren Erstellten Ordner

cp -R * /var/www/example.com

Erteilen sie die Berechtigung und den Richtigen User:

chmod -R 755 /var/www/example.com

&

chown -R www-data:www-data /var/www/example.com

Apache Module Aktivieren:

sudo a2enmod rewrite
sudo a2enmod headers
sudo a2enmod env
sudo a2enmod dir
sudo a2enmod mime
systemctl restart apache2

Apache Webserver Neutsarten:

Webseite Aktivieren #

Webseite über SSH / Terminal Aktivieren #

Erstellen sie eine Konfiguartionsdati mit:

nano /etc/apache2/sites-available/example.com.conf

—————In der Liste——————

Fügen sie Folgende Inhalt ein Und Verändern sie die Variabel example.com und schrieben sie bei ServerAdmin ihre E-Mail rein:

<VirtualHost *:80>
ServerAdmin master@domain.com
DocumentRoot /var/www/example.com/
ServerName example.com

<Directory /var/www/example.com/>
Options +FollowSymlinks
AllowOverride All
Require all granted
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/example.com
SetEnv HTTP_HOME /var/www/example.com
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Drücke STRG + O und danach STRG + X um zu Speichern

Akivieren sie die Webseite:

sudo a2ensite example.com.conf

Starten sie den Apache Webserver Neu mit:

systemctl restart apache2

Webseite Aktivieren über Webmin #

What are your feelings
Updated on 21. August 2024