Webserver auf Raspberry: Unterschied zwischen den Versionen

Aus FHEMWiki
(Artikel fertig, Baustellenschild entfernt)
K (so besser/sauberer)
 
(7 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Auf Raspberry-Systemen benötigt man oft einen Webserver. Zwar gibt es bereits Lösungen wie Apache2 oder Nginx, allerdings sind diese rechenzeit- und speicherintensiv. Oft wird auf kleinen Systemen wie dem RaspberryPi Zero eine Lösung gesucht, die ohne viel Ressourcen beispielsweise nur den Inhalt einer Datei via http ausliefert. Da bietet sich Gating von Fefe an; diese Lösung soll hier vorgestellt werden.
Auf Raspberry-Systemen benötigt man oft einen Webserver. Zwar gibt es bereits Lösungen wie Apache2 oder Nginx, allerdings sind diese rechenzeit- und speicherintensiv. Oft wird auf kleinen Systemen wie dem RaspberryPi Zero eine Lösung gesucht, die ohne viel Ressourcen beispielsweise nur den Inhalt einer Datei via http ausliefert. Da bietet sich Gatling von Fefe an; diese Lösung soll hier vorgestellt werden.


==Installation==
==Installation==
<source lang="html">
<syntaxhighlight lang="bash">
apt install gatling
apt install gatling
</source>
</syntaxhighlight>


Es muss sodann /lib/systemd/system/gatling.service erstellt werden:
Es muss sodann /lib/systemd/system/gatling.service erstellt werden:
<source lang="html">
<syntaxhighlight lang="html">
#!/bin/sh
#!/bin/sh


[Unit]
[Unit]
Description=Control gatling webserver
Description=Control gatling webserver
After=network.target
After=networking.target


[Service]
[Service]
Zeile 21: Zeile 21:
[Install]
[Install]
WantedBy=multi-user.target
WantedBy=multi-user.target
</source>
</syntaxhighlight>


Danach muss diese Datei noch verlinkt werden:
Danach muss diese Datei noch verlinkt werden:
<source lang="html">
<syntaxhighlight lang="bash">
cd /etc/systemd/system/multi-user.target.wants/
cd /etc/systemd/system/multi-user.target.wants/
ln -s /lib/systemd/system/gatling.service gatling.service
ln -s /lib/systemd/system/gatling.service gatling.service
</source>
</syntaxhighlight>
 
In /etc/default/gatling müssen die Kommentarzeichen vor den Zeilen
<syntaxhighlight lang="bash">
START_DAEMON="YES"
DAEMON="gatling"
</syntaxhighlight>
entfernt werden.


Und nun starten:
Und nun starten:
<source lang="html">
<syntaxhighlight lang="bash">
service gatling start
# systemctl unmask gatling
</source>
# systemctl restart gatling
# systemctl enable gatling
</syntaxhighlight>


(Der Autor hat Zugriffsrechte nicht geprüft. Idealerweise sollten nun Dateien aus /var/www/ ausgeliefert werden.)
(Der Autor hat Zugriffsrechte nicht geprüft. Idealerweise sollten nun Dateien aus /var/www/ ausgeliefert werden.)


==Alternativen==
==Alternativen==
Im Forum wurden im Thread https://forum.fhem.de/index.php/topic,98295.15.html eine Vielzahl an Alternativen für kleine, leichtgewichtige Webserver genannt. Insbesondere sei auf die Listen unter https://gist.github.com/willurd/5720255 sowie https://www.pcsuggest.com/best-lightweight-web-server-linux/ verwiesen.
Im Forum wurden in {{Link2Forum|Topic=98295|LinkText=diesem Thread}} eine Vielzahl an Alternativen für kleine, leichtgewichtige Webserver genannt. Insbesondere sei auf die Listen unter https://gist.github.com/willurd/5720255 sowie https://www.pcsuggest.com/best-lightweight-web-server-linux/ verwiesen.
 
[[Kategorie:Raspberry Pi]]
[[Kategorie:HOWTOS]]

Aktuelle Version vom 24. Februar 2024, 22:17 Uhr

Auf Raspberry-Systemen benötigt man oft einen Webserver. Zwar gibt es bereits Lösungen wie Apache2 oder Nginx, allerdings sind diese rechenzeit- und speicherintensiv. Oft wird auf kleinen Systemen wie dem RaspberryPi Zero eine Lösung gesucht, die ohne viel Ressourcen beispielsweise nur den Inhalt einer Datei via http ausliefert. Da bietet sich Gatling von Fefe an; diese Lösung soll hier vorgestellt werden.

Installation

apt install gatling

Es muss sodann /lib/systemd/system/gatling.service erstellt werden:

#!/bin/sh

[Unit]
Description=Control gatling webserver
After=networking.target

[Service]
Type=simple
ExecStart=/usr/bin/gatling -u www-data -V -F -S -D -c /var/www/
ExecReload=/bin/kill $MAINPID && /usr/bin/gatling -u www-data -V -F -S -D -c /var/www/

[Install]
WantedBy=multi-user.target

Danach muss diese Datei noch verlinkt werden:

cd /etc/systemd/system/multi-user.target.wants/
ln -s /lib/systemd/system/gatling.service gatling.service

In /etc/default/gatling müssen die Kommentarzeichen vor den Zeilen

START_DAEMON="YES"
DAEMON="gatling"

entfernt werden.

Und nun starten:

# systemctl unmask gatling
# systemctl restart gatling
# systemctl enable gatling

(Der Autor hat Zugriffsrechte nicht geprüft. Idealerweise sollten nun Dateien aus /var/www/ ausgeliefert werden.)

Alternativen

Im Forum wurden in diesem Thread eine Vielzahl an Alternativen für kleine, leichtgewichtige Webserver genannt. Insbesondere sei auf die Listen unter https://gist.github.com/willurd/5720255 sowie https://www.pcsuggest.com/best-lightweight-web-server-linux/ verwiesen.