Simon Daum
Feldversuch: Hosten einer (old school) Website auf einem Raspberry Pi
Eine Website auf einem Einplatinencomputer Hosten
Zu den Einplatinencomputern gehört unser Raspberry Pi, den wir dazu verwenden werden, um einen Webserver aufzusetzen. Um den Leisungsverhältnissen des RPI gerecht zu werden, erhält die Webseite einen coolen "brutalist-Stil".
Wegen der handlichen Größe und des geringen Stromverbrauches ist er die ideale Lösung für das Experiment.
Die Idee dahinter ist einen günstigen Server zu betreiben und durch niedrigen Stromverbrauch eine Retro-Version unserer Webseite zu hosten.
Raspbian dient als Betriebssystem, welches speziell für der RPI entwickelt wurde. Für eine Gästebuch Funktion wird PHP7 installiert. Um dem ganzen noch den Letzten Performance-Technischen Schliff zu geben erhält er noch den Lighttpd als HTTP-Server und SLQITE als Datenbank für geringeren RAM-Auslastung
Die Herausforderung hierbei ist, dass ein RPI wenig Leistung besitzt. Deshalb muss die Software so gewählt werden, dass die Webseite möglichst effizient an die Besucher ausgeliefert wird.
Software & Tools
SQLite
Bei diesem Datenbanksystem sind Datenbanken als Dateien persistent. Die Datei wird nur dann aufgerufen, wenn eine Datenbank-Abfrage stattfindet. Dadurch ist die Auslastung vom RAM nicht allzu groß wie bei MYSQL.
Lighttpd
Optimierer Cache und asynchrone Bearbeitung von Anfragen machen diesen Server zu einen der schnellsten Alternativen zum Standard Apache-Server. Hierdurch wird CPU und RAM effizienter durch asynchrones bearbeiten von Anfragen ausgelastet. Blockierende Anfragen (darunter Datenbankabfragen oder API-Aufrufe) werden gesondert behandelt und somit erhalten nicht-blockierende Anfragen ein Performance-Plus.
PHP7
Die neueste PHP-Version ist Pflicht für schnellen Code. Jeder bei dem es möglich ist ein Update durchzuführen sollte dies tun.
DuckDNS
Da wir eine dynamische IP-Adresse besitzen, die nach dem täglichen Neuverbindung zum Internet zugewiesen wird, müssen wir dem DNS-Server mitteilen wie unsere IP ist.
Gästebuch
Ein Gästebuch Seite, von unserem Lehrling Marco als seine erste PHP Anwendung, ermöglicht es Besucher Kommentare zu hinterlassen.
Etcher
Software zum Brennen von SD-Karten.
Mit diesem Packet ist der RPI sehr gut ausgerüstet.
Schritte
Um das Betriebssystem auf die SD-Card zu brennen verwenden wir Etcher. Etcher ist eine Brenn-Software für SD-Karten und USB-Sticks.
Nach einstecken der Micro-SD und Bootvorgang kann auch schon mit der Installation der benötigten Software begonnen werden. Die Restlichen Schritte bestehen nur noch aus der Einrichtung des cronjobs für die IP-Updates und die Konfiguration des Routers um unsere Webseite vom Internet aus erreichbar zu machen.
Das Ergebnis findest du hier → http://brutalism.lackner-media.at/ (wieder offline)
Ist es klug die eigene Webseite am Server im Heimnetzwerk zu hosten?
Eine Webseite und besonders der Server benötigt professionelle Wartung um Sicherheit zu gewährleisten. Nicht nur Sicherheit, sondern auch Internetgeschwindigkeit und die damit verbundene Bandbreite muss bereitgestellt werden.
Eine Hohe Verfügbarkeit können daher meist nur professionelle Hoster bieten. Aber wie man sehen kann ist es durchaus möglich eine kleine Webseite auf einem RPI zu hosten. Empfohlen wird eine statische IP-Adresse, entsprechende Hardware, genügend Internetgeschwindigkeit und Bandbreite um die eigene Webseite zu hosten.
Bleibe immer up-do-date! Über unseren Newsletter erfährst du immer als erster, wenn wir wieder neue Beiträge veröffentlichen.