Aus Raspberry Pi Geek 12/2018

GL-AR300M-ext als Dokumentenserver für Vorträge (Seite 2)

Anpassungen

Der Webserver meldet sich mit der Übersicht über die Konfiguration ähnlich wie in Abbildung 2. Möchten Sie stattdessen eine eigene Webseite starten, benennen Sie im ersten Schritt die Standardseite des Routers um (Listing 1). Zeile 1 gewährt Zugang zum Server. Zeile 2 gibt der Datei /www/index.html einen neuen Namen, statt sie zu löschen.

Listing 1

 

$ ssh [email protected]
router:~# mv /www/index.html /www/indexa.html
router:~# exit
$ scp index.html [email protected]:/www/index.html
router:~# ln -s /mnt/sda1/ /www
router:~# exit

Listing 2 ist ein Vorschlag, wie die neue Startseite index.html aussehen könnte. Der Befehl scp, Zeile 4 in Listing 1, kopiert sie aus dem aktuellen Verzeichnis des Rechners auf den Router.

Listing 2

 

<html>
    <head>
        <title>Willkommen</title>
        <meta http-equiv="content-type" content="text/html;charset=utf-8" />
        <meta http-equiv="refresh" content="3; URL=sda1/index.html">
    </head>
    <body>
        <h1>Willkommen auf dem Dokumentenserver von GLI</h1>
        Hier geht es zum <a href="sda1/index.html">sda1-Stick</a>.
    </body>
</html>

Der Router bindet einen USB-Stick automatisch als /mnt/sda1/ ein. Zeile 6 in Listing 1 setzt einen symbolischen Link in den Pfad des Webservers. Das berechtigt ihn, diese Dateien anzuzeigen. Andernfalls würde der Link in der HTML-Datei in Listing 2 nicht funktionieren.

Zeile 5 in der HTML-Datei leitet die Seite automatisch nach drei Sekunden weiter. Möchten Sie, dass dies direkt geschieht, ersetzen Sie die Ziffer 3 durch eine Null. Oder Sie löschen die Zeile, wenn nur ein manueller Zugriff auf die weitere Seite gewünscht ist.

HTML-Hilfestellungen

Auf dem Verzeichnis des USB-Sticks angekommen, ist der Webserver zunächst ratlos. Ihm fehlt der Name der Datei, die er für dieses Verzeichnis anzeigen soll. Abhilfe schafft die Konfiguration, sie legt fest, wie er mit unvollständigen Aufrufen umgeht.

Die Konfigurationsdatei des Webservers Lighttpd finden Sie in /etc/lighttpd/lighttpd.conf. Hier haben die Entwickler bereits konfiguriert, dass der Dienst bei der Fehlermeldung 404 – Datei existiert nicht – automatisch auf die Konfigurationsseite des Routers weiterleitet.

Sie legt ebenfalls fest, dass er nach der Datei index.html sucht, wenn Sie nur das Verzeichnis angeben. Bei einem Dokumentenserver ist es wünschenswert, bei fehlender Index-Datei keinen Fehlerbericht auszugeben, sondern den Inhalt des Verzeichnisses.

Listing 3

 

opkg update
opkg install nano
nano /etc/lighttpd/lighttpd.conf
/etc/init.d/lighttpd restart

Listing 3 erläutert die Schritte, die Sie jeweils auf dem Router erledigen. Zeile 2 installiert den Texteditor Nano. Zeile 3 öffnet die Konfigurationsdatei, die Sie um die Zeile server.dir-listing = "enable" erweitern. Über [Strg]+[O] und [Strg]+[X] speichern Sie die Änderungen. Anschließend starten Sie den Webserver neu. Abbildung 5 zeigt die vom Server automatisch generierte Übersicht.

Abbildung 5: Richtig konfiguriert zeigt Lighttpd die Dateien an, die der Server in einem Verzeichnis findet.

Abbildung 5: Richtig konfiguriert zeigt Lighttpd die Dateien an, die der Server in einem Verzeichnis findet.

Es geht aber noch etwas schicker: Der untere Teil von Abbildung 6 zeigt eine statisch erzeugte Index-Datei. Den Kern dafür bildet das Programm Tree [3].

Abbildung 6: Neben der Einstiegsseite (oben) lohnt es sich, die Ansicht mit den verlinkten Dateien auf dem USB-Stick noch etwas aufzupeppen. Dabei hilft das Programm Tree.

Abbildung 6: Neben der Einstiegsseite (oben) lohnt es sich, die Ansicht mit den verlinkten Dateien auf dem USB-Stick noch etwas aufzupeppen. Dabei hilft das Programm Tree.

Es beginnt den Scan im aktuellen Verzeichnis (-H "."), listet bis in eine Tiefe von 4 (-L 4), unterdrückt Ausgaben bezüglich des Status (--noreport), ignoriert bestimmte Dateien (-I "index.html") und leere Verzeichnisse (--prune), gibt die Dateigröße aus (-h), vergibt einen Titel (-T "Verzeichnis") und schreibt alles in eine Datei (> index.html) (Listing 4).

Listing 4

 

$ tree -H '.' -L 4 --noreport --charset utf-8 -I "index.html" -h --prune -T "Verzeichnis" > index.html
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 5 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS Raspberry Pi Geek bei Google Play Readly Logo
Nach oben