Raspberry Pi, LAMP & WordPress
I. Planung
Für die Erstellung funktionsstarker Seiten ist WordPress zu empfehlen. Es gibt professionelle Design-Vorlagen und die händische Programmierung wäre zudem viel zu aufwendig.
LAMP steht für Linux-Apache-MySQL-PHP-Server und ist eine bewährte Server-Kombination. Das WordPress-System wollen wir ausschließlich im Intranet nutzen. Zunächst dient der WordPress-Server der internen Dokumentation. Später sollen Streaming- und File-Server-Dienste hinzukommen. Eine Einbindung ins Internet ist nicht vorgesehen.
Wir verwenden das Modell Raspberry Pi 4B mit 2 GB RAM. Die Geschwindigkeit des USB-3-Anschlusses reicht aus, um externe Festplatten für das Intranet bereitzustellen. Der Stromverbrauch liegt zwischen vier und acht Watt.
Als Betriebssystem kommt Raspbian (64-bit) Lite auf einer 64 GB microSD-Karte zum Einsatz. Raspbian wird vom Hersteller empfohlen. Die Lite-Version verzichtet auf eine grafische Benutzeroberfläche, was Energie und Rechenleistung spart.
II. Installation des Betriebssystems
Die Installation erfolgt mithilfe eines Installers vom PC aus und ist unkompliziert. Problematisch war jedoch die Vergabe einer statischen IP-Adresse.
Zunächst versuchte ich, die Datei /etc/network/interfaces
zu konfigurieren – ohne Erfolg. Tatsächlich kann man die statische IP nur über den network-manager einrichten. Mit der Befehlsfolge nmcli device status muss das Netzwerk ausgelesen werden. Mit nmtui edit „Wired connection 1“ muss die Ethernet-Verbindung eingerichtet werden. Da Raspbian auf Debian basiert, war mir diese Besonderheit nicht sofort ersichtlich.
Nach der fehlerhaften Netzwerkkonfiguration war der Raspberry Pi nicht mehr erreichbar. Da mir die richtige Konfigurationsdatei zunächst nicht bekannt war, musste ich das Betriebssystem neu installieren und die feste IP schließlich über den DHCP-Server vergeben.
Wer einen Raspberry Pi mit einer festen IP für den Internetzugang nutzen möchte, sollte diese Besonderheit berücksichtigen. Wer zudem das sehr empfehlenswerte Server-Administrations-Tool KeyHelp verwenden möchte, sollte in Erwägung ziehen, auf Raspbian zu verzichten.
III. Webserver
Wir haben uns für den Apache2-Webserver entschieden, da er weit verbreitet und gut dokumentiert ist.
Während der Installation traten jedoch Probleme auf: Das Skript /usr/sbin/a2enmod
, mit dem Apache-Module aktiviert werden, enthielt einen Fehler. Die IF-Bedingung in Zeile 15 war fehlerhaft formuliert. Glücklicherweise ließ sich das Problem durch einfaches Auskommentieren der Zeile beheben.
Dieser Fehler spricht jedoch auch gegen eine uneingeschränkte Empfehlung von Raspbian als Serverbetriebssystem.
IV. Datenbank
Wir setzen auf MariaDB, ein Open-Source-Projekt, das als Ersatz für MySQL entwickelt wurde. MariaDB gilt als etwas leistungsfähiger als MySQL.
Die Installation verlief problemlos.
V. PHP
Aktuell ist PHP 8.2 verfügbar. Ich selbst habe PHP noch in Version 3 gelernt. PHP ermöglicht die serverseitige Programmierung von Datenbankanbindungen, dynamischen Webseiten und Webanwendungen. Die Ausführung erfolgt direkt auf dem Server und beansprucht dessen Ressourcen.
Wir haben die Grundinstallation durchgeführt und die für WordPress empfohlenen Module installiert.
VI. WordPress
Bei der WordPress-Installation kam es zu wiederholten Fehlermeldungen bezüglich fehlender PHP-Module. Diese mussten manuell nachinstalliert werden.
Als Theme haben wir Kadence gewählt. Zur Gestaltung der Seiten haben wir den Elementor–Editor als Plugin installiert. Ergänzend nutzen wir die Plugins Royal Elementor Addons und Premium Elementor Addons, die zahlreiche zusätzliche Widgets und Funktionen bieten.
Für Beitragsseiten nutze ich jedoch ausschließlich den WordPress–Editor, da Elementor für diesen Zweck nicht erforderlich ist. Der WordPress-Editor erzeugt zudem schlankeren Code, was das Datenaufkommen im Intranet reduziert.
VII. Fazit
Raspberry Pi läuft für ARM- und Linux-System typisch seit Tagen ohne Probleme. Ich würde allerdings für das Projekt nicht mehr das Raspbian nutzen.
Ich habe den Eindruck, dass der Hersteller das Raspberry Pi doch stärker in Richtung Arbeitsplatz-PC entwickeln möchte. Der Network-Manager stellt im Konsolen-Modus keine Arbeitserleichterung dar und hat dort deshalb keinen Sinn. Sinn bekommt dieser erst, wenn er rein grafisch über eine GUI bedient wird. Auch der Fehler in der so wichtigen Script-Datei a2enmod
deutet darauf hin, dass der Hersteller seine
Prioritäten nicht im Server-Bereich lieg
t
.
Beim nächsten mal werde ich voraussichtlich auf die
Debian arm64
oder
Ubuntu arm64
zurück greifen.