Unterabschnitte
Das Mini_HTTPD-Paket enthält einen kleiner HTTP-Server. Seine Performance
ist nicht großartig, aber für Seiten mit geringem Datenverkehr ist er
ausreichend.
Dem Mini_HTTPD wurden alle Standardfunktionen eines HTTP-Servers
implementiert, darunter:
- GET, HEAD und POST Methoden
- CGI
- Basic authentication.
- Sicherung gegen `..' Dateischnüffeln
- die allgemeinen MIME Typen
- index.html, index.htm, index.cgi (Abrufreihenfolge)
- Ordnerinhalt ausgeben
- virtuelle Hosts
- Standard loggen
- benutzerdefinierte Fehlerseiten
- SSL/HTTPS und IPv6.
Mini_HTTPD wurde aus einer Reihen von Gründen programmiert. Zum
einen als Experiment um zu sehen wie langsam ein alter Webserver
auf heutigen Betriebssystems sein würde. Überraschenderweise
lautet die Antwort `nicht sehr langsam'.
Auf einem FreeBSD v3.2-System erreicht der Mini_HTTPD ungefähr 90%
der Geschwindigkeit des Apache-Webservers. Ein weiterer Grund für
die Entwicklung des Mini_HTTPD war, auf einer einfachen Plattform
mit Webserver-Technologien zu experimentieren, z.B. mit SSL.
Quelle: http://www.acme.com/software/mini_httpd/
Das Mini_HTTPD-Paket-Paket besteht aus folgenden Komponenten:
Es ist möglich zusätzliche, optionale Module zu installieren.
Das Mini_HTTPD-Paket wird über das Setup-Menü installiert. Wird
eine ältere Paketversion vorgefunden, so wird diese deinstalliert
bevor die neuen Programmdateien installiert werden.
Das Menü im Setup-Programm ist wie folgt aufgebaut:
- View documentation: Anzeigen der Dokumentation
- Edit configuration: Bearbeiten der Konfiguration
- Advanced configuration file handling: Konfigurationen verwalten
- Status of Mini_HTTPD: Status des Webservers anzeigen
- Stop Mini_HTTPD: Webserver anhalten
- Start Mini_HTTPD: Webserver starten
- Goto modules: Zum Modulmenü verzweigen
- View log file: Die Logdatei anzeigen
- View access log file: Die Zugriffslogdatei anzeigen (optional)
- Exit: Untermenü verlassen
Die Menüpunkte dürften selbsterklärend sein, da sie keinerlei
weiteren Eingaben erwarten. Aus diesem Grund wird auf deren Funktion
nicht weiter eingegangen.
In der Konfigurationsdatei, die über das Menü zugänglich ist, sind
folgende Parameter vorhanden; wer sie von Hand editieren will findet
sie unter /etc/config.d/mini_httpd.
-
- START_MINI_HTTPD
-
Wird der Wert dieses Parameter auf `yes' gestellt, so wird der
Mini_HTTPD-Webserver aktiviert, der Wert `no' deaktiviert ihn.
Gültige Werte: IP-Adresse
Standardwert: START_MINI_HTTPD='no'
- MINI_HTTPD_PORT
-
Über diesen Parameter wird der TCP-Port festgelegt, über
welchen auf den Webserver zugegriffen werden soll. Es muss
darauf geachtet werden, dass der eingestellte Port nicht
bereits von einem anderen Programm verwendet wird, da dies
verständlicherweise zu Problemen führt.
ACHTUNG
Wer seinen eisfair-Server als Router verwendet sollte
sicher stellen, dass dieser Port nach außen blockiert
ist.
Gültige Werte: Zahl
Standardwert: MINI_HTTPD_PORT='443'
- MINI_HTTPD_HEADER
-
Wird der Wert dieses Parameter auf `yes' gestellt, so wird ein
Header im Webbrowser angezeigt, der Wert `no' schaltet die
Anzeige des Headers ab.
Gültige Werte: yes, no
Standardwert: MINI_HTTPD_HEADER='yes'
- MINI_HTTPD_SSL
-
Wird der Wert dieses Parameter auf `yes' gestellt, so wird die
Verwendung des SSL-Protokolls für den Zugriff auf die
Weboberfläche aktiviert. Der Wert `no' hingegen erlaubt den
unverschlüsselten Zugriff auf die Weboberfläche.
Hinweis
Bei MINI_HTTPD_SSL='yes' ist darauf zu bedenken, dass
die Adresse im Webbrowser mit `https://' beginnt.
Gültige Werte: yes, no
Standardwert: MINI_HTTPD_SSL='yes'
- MINI_HTTPD_BIND_HOST
-
Über diesen Parameter kann ein Hostname festgelegt werden um
den Zugriff auf den Mini_HTTPD einzuschränken. Wird der Wert
`none' gesetzt, so wird der Zugriff nicht eingeschränkt.
Gültige Werte: none, Hostname
Standardwert: MINI_HTTPD_BIND_HOST='none'
- MINI_HTTPD_USER_N
-
Über diesen Parameter wird die Anzahl der Anwender festgelegt,
welche über die folgenden Parameter definiert werden.
Gültige Werte: Zahl
Standardwert: MINI_HTTPD_USER_N='1'
- MINI_HTTPD_USER_x_ACTIVE
-
Wird der Wert dieses Parameters auf `yes' gesetzt, so wird der
zugehörige Datensatz aktiviert, `no' deaktiviert ihn.
Gültige Werte: yes, no
Beispiel: MINI_HTTPD_USER_1_ACTIVE='no'
- MINI_HTTPD_USER_x_RIGHTS
-
Über diese Parameter wird ein Anwendername, ein Kennwort und
die Zugriffsrechte für den Zugriff auf die Weboberfläche,
pro einen Anwender festgelegt.
Beispiel:
MINI_HTTPD_USER_1_USER='admin'
MINI_HTTPD_USER_1_PASS='admin'
MINI_HTTPD_USER_1_RIGHTS='all'
- MINI_HTTPD_LOG
-
Wurde der Parameter MINI_HTTPD_LOGFILE ungleich `none' gesetzt,
so kann über diesen Parameter festgelegt werden, ob Servermeldungen
in eine Logdatei geschrieben werden sollen oder nicht.
Gültige Werte: yes, no
Standardeinstellungen: MINI_HTTPD_LOG='no'
- MINI_HTTPD_LOG_FILE (Optionaler Parameter)
-
Wurde der Parameter MINI_HTTPD_LOGFILE ungleich `none' gesetzt,
so kann über diesen Parameter ein Logdateiname, inkl. des
Verzeichnispfades, angegeben werden. Wird dieser Parameter
nicht gesetzt, so wird standardmäßig die Logdatei
`/var/log/mini_httpd.log' verwendet.
Gültige Werte: Logdateiname inkl. Pfad
Beispiel: MINI_HTTPD_LOG_FILE='/var/log/mini_httpd.log'
- MINI_HTTPD_LOG_COUNT
-
Wurde der Parameter MINI_HTTPD_LOGFILE ungleich `none' gesetzt,
so kann über diesen Parameter eingestellt werden, wie viele Logdateien
vorgehalten werden sollen. Wird dieser Wert überschritten, so
wird die älteste Logdatei gelöscht.
Gültige Werte: Zahl
Standardeinstellungen: MINI_HTTPD_LOG_COUNT='10'
- MINI_HTTPD_LOG_INTERVAL
-
Wurde der Parameter MINI_HTTPD_LOGFILE ungleich `none' gesetzt,
so kann über diesen Parameter bestimmt werden in welchen Intervallen
die Logdateien archiviert werden sollen. Zur Auswahl stehen die
Schlüsselwörter
'daily' - täglich, 'weekly' - wöchentlich und 'monthly - monatlich.
Gültige Werte: daily, weekly, monthly
Standardeinstellungen: MINI_HTTPD_LOG_INTERVAL='weekly'
1 | Wurde der Parameter MINI_HTTPD_SSL='yes' gesetzt, so sollte man beim Zugriff
mittels Webbrowser der URL unbedingt das Protokoll `https://' voranstellen ;-)
|
2 | Der Parameter MINI_HTTPD_BIND_HOST wurde vorerst nur zu Testzwecken eingebunden.
|