Der Raspberry Pi eignet sich hervorragend als lokaler Webserver oder für kleine Webprojekte. In diesem Tutorial richte ich einen vollständigen LAMP-Stack (Linux, Apache, PHP, MariaDB) auf dem Raspberry Pi ein.
Voraussetzungen
- Raspberry Pi 3, 4 oder 5 mit Raspberry Pi OS (Bookworm)
- Netzwerkverbindung (LAN oder WLAN)
- SSH-Zugang oder direkt am Pi eingeloggt
Schritt 1: System aktualisieren
|
1 |
sudo apt update && sudo apt upgrade -y |
Schritt 2: Apache installieren
|
1 |
sudo apt install apache2 -y |
Apache startet automatisch. Testet die Installation, indem ihr im Browser http://raspberrypi.local oder die IP-Adresse des Pi aufruft – ihr solltet die Apache-Standardseite sehen.
Apache beim Start automatisch aktivieren:
|
1 |
sudo systemctl enable apache2 |
Schritt 3: PHP installieren
|
1 |
sudo apt install php libapache2-mod-php -y |
PHP-Version prüfen:
|
1 |
php -v |
Apache nach der Installation neu starten:
|
1 |
sudo systemctl restart apache2 |
PHP testen – Testdatei erstellen:
|
1 |
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php |
Dann http://raspberrypi.local/info.php im Browser aufrufen.
Schritt 4: MariaDB installieren
|
1 |
sudo apt install mariadb-server php-mysql -y |
MariaDB absichern:
|
1 |
sudo mysql_secure_installation |
Folgt den Anweisungen: Root-Passwort setzen, anonyme Nutzer entfernen, Remote-Root-Login deaktivieren.
Schritt 5: phpMyAdmin installieren (optional)
|
1 |
sudo apt install phpmyadmin -y |
Bei der Installation: apache2 auswählen und die Datenbank automatisch konfigurieren lassen. phpMyAdmin ist dann unter http://raspberrypi.local/phpmyadmin erreichbar.
Website-Dateien ablegen
Eure Website-Dateien gehören nach /var/www/html/. Mit diesem Befehl gebt ihr eurem Benutzer Schreibrechte:
|
1 |
sudo chown -R $USER:$USER /var/www/html/ |
Webserver von außen erreichbar machen
Um den Webserver aus dem Internet erreichbar zu machen, benötigt ihr:
- Eine statische IP oder DynDNS
- Port-Forwarding im Router: Port 80 (HTTP) und 443 (HTTPS) → IP des Pi
- Ein SSL-Zertifikat (kostenlos via Let’s Encrypt):
sudo apt install certbot python3-certbot-apache -y
Hilfreiche Apache-Befehle
|
1 2 3 4 5 6 7 8 9 10 |
# Status prüfen sudo systemctl status apache2 # Starten / Stoppen / Neu starten sudo systemctl start apache2 sudo systemctl stop apache2 sudo systemctl restart apache2 # Apache-Fehlerlog anzeigen sudo tail -f /var/log/apache2/error.log |
