====== V2: Installation des Web-Servers ======
Als Web-server kommt hier eine LAMP-Konfiguration aus dem Apache2 Web-Server, MariaDB als universeller Datenbank-Server und PHP zum Einsatz. Zudem installieren wir noch phpMyAdmin, um die Datenbanken besser verwalten zu können.
===== Apache2 =====
Obwohl in der Notfallbox V1 das Server-Leichtgewicht "lighttpd" zum Einsatz kommt, haben wir uns für die V2 entschlossen, den Apache2-Server zu verwenden, da dieser in Sachen Verzeichnissicherung (siehe Admin-Interface) doch etwas einfacher zu handhaben ist - einfacher im Sinne des Benutzers ;-)
* ''sudo apt -y install apache2''
* Ist man mit dem WLAN der Notfallbox verbunden, testen wir das Ganze im Browser mit http://10.0.0.1
* Ist man über LAN mit der Notfallbox verbunden, testen wir das Ganze im Browser mit der LAN-IP-Adresse der Notfallbox.
* Es wird dann die Debian-Apache Standard-Seite angezeigt.
{{ :nfb:software:installation:pi:2:zwischenablage01.png?nolink&400 |}}
===== PHP =====
* ''sudo apt -y install php php-mysql''
* ''sudo nano /var/www/html/phpinfo.php''\\ Inhalt erstellen, speichern und schliessen:
* Im Webbrowser abrufen: http://10.0.0.1/phpinfo.php\\
* **ACHTUNG: Die PHP-Version kann abweichen!!! Es wird nicht zwangsweise die Version 8.x installiert.**
{{ :nfb:software:installation:pi:2:phpinfo_php82.png?nolink&400 |}}
Nach der Installation müssen wir noch drei Parameter in der Initialisierungs-Datei für PHP ändern:
* ''sudo nano /etc/php/8.2/apache2/php.ini''
* Folgende Zeilen wie folgt anpassen:
### Setzt die maximale PHP-Script-Laufzeit auf 10 Minuten (600 Sekunden)
max_execution_time = 600
### Setzt die Göße maximal hochladbarer Dateien auf 12 MegaByte
upload_max_filesize = 12M
### Setzt die Größe maximal per Formular hochladbarer Dateien auf 12 MegaByte
post_max_size = 12M
* Editor beenden und speichern
* ''sudo systemctl restart apache2''
Selbstverständlich können die Werte frei gewählt werden und sollten im späteren Verlauf an die eigene Situation angepasst werden - z.B. wenn man den Upload von 20 MB großen Dateien in die Cloud erlauben will!
===== MariaDB =====
* ''sudo apt -y install mariadb-server mariadb-client''
* ''sudo systemctl start mariadb && sudo systemctl enable mariadb''
* ''sudo systemctl status mariadb''\\ Active: active(running)
* ''sudo mysql_secure_installation''\\
Enter current password for root: [ENTER]
Set root password? [Y/n] Y
New password: notfallbox
Re-enter new password: notfallbox
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
* ''sudo mariadb -u root -pnotfallbox''
* ''CREATE USER 'notfallbox'@'localhost' IDENTIFIED BY 'notfallbox'; GRANT ALL PRIVILEGES ON notfallbox . * TO 'notfallbox'@'localhost'; FLUSH PRIVILEGES; SELECT User,Host FROM mysql.user; exit;''
* Ausgabe:
+-------------+-----------+
| User | Host |
+-------------+-----------+
| mariadb.sys | localhost |
| mysql | localhost |
| notfallbox | localhost |
| root | localhost |
+-------------+-----------+
4 rows in set (0,001 sec)
===== phpMyAdmin =====
* ''sudo apt -y install phpmyadmin''
* "Konfiguriere phpmyadmin / Webserver": ''apache - OK''
* "Konfigurieren der Datenbank für phpmyadmin mit dbconfig-common?": ''JA''
* Passwort: ''notfallbox - OK''
* In sehr vielen Fällen der Installation auf dem Raspberry PI beendete sich die Installation mit einem Fehler. Das macht aber nichts. In diesem Fall die Installation mittels ''sudo apt -y install phpmyadmin'' einfach noch einmal starten.
* ''sudo mariadb -u root -pnotfallbox''
* ''GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost'; FLUSH PRIVILEGES; EXIT;''
* In einem Browser ''http://10.0.0.1/phpmyadmin'' aufrufen, wenn man über den Hotspot verbunden ist. Ansonsten bitte die lokale IP-Adresse verwenden.\\
{{ nfb:download:linkliste:software:installation:zwischenablage01.jpg?nolink&400 |}}
* "Benutzername": ''phpmyadmin''
* "Passwort": ''notfallbox''
* Bitte im Reiter "Datenbank" prüfen, ob phpmyadmin berechtigt ist, neue Datenbanken anzulegen.
* Zum Verlassen des Admin bitte das Tür-Symbol oben links anklicken\\
{{ nfb:download:linkliste:software:installation:phpmyadmin_exit.jpg?nolink&200 |}}
**ACHTUNG: Sollte der Aufruf des phpmyadmin trotz einer erfolgreichen Installation nicht funktionieren, so hilft vielleicht dieser Befehl:**
''sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin''\\
Denn die Web-Server-Dateien des phpmyAdmin liegen NICHT dort, wo alle anderen Web-Server-Dateien zu liegen kommen.
Nachdem nun alles funktioniert, fehlen nur noch die [[nfb:software:installation:pi:2:inhalte|Inhalte]] für den Webbrowser, um aus diesem PC eine "Notfallbox" zu machen.