ubuntuusers.de

Hinweis: Dies ist ein statischer Snapshot unseres Wikis vom 25. März 2013 und kann daher nicht bearbeitet werden. Der aktuelle Artikel ist unter wiki.ubuntuusers.de zu finden.

Instant Webserver

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/service.png Einen „echten“ Webserver installieren, konfigurieren und pflegen kann in Arbeit ausarten. Viel praktischer wäre ein temporärer Webserver, der sich – nur bei Bedarf – genauso schnell starten wie beenden lässt. Dies ist kein Problem mit den folgenden Programmen. Eine Zielgruppe sind z.B. Webentwickler, die statische HTML-Seiten auf dem eigenen Rechner testen möchten. Eine andere sind Anwender, die schnell Daten zwischen zwei oder mehreren Rechnern austauschen wollen.

Allerdings sollte unbedingt berücksichtigt werden, dass die genannten Programme ausschließlich zum vorübergehenden Einsatz in einem lokalen Netzwerk (LAN) gedacht sind. Der jeweilige Ordner wird in der Regel rekursiv freigegeben, ist also inklusive aller Unterordner und versteckter Dateien im Netzwerk sichtbar. Wenn der Rechner oder das LAN nicht über eine Firewall abgesichert sind, stehen unter Umständen persönliche Daten vollkommen ungeschützt im Internet.

Für den Zugriff von einem anderen Rechner reicht ein beliebiger Webbrowser aus. Um die vorgestellten Programme (bis auf woof und webfs) wieder zu beenden, reicht ein Strg + C auf der Kommandozeile [1]. Die Port-Nummer und der Ordnername sind jeweils frei wählbar. Die hier verwendeten Ports 8081 - 8085, der Ordner ~/Downloads und localhost (muss praktisch durch die IP-Adresse des Server-Rechners ersetzt werden) dienen nur als Beispiel.

Achtung!

Alle genannten Programme bieten keinerlei Zugriffsschutz und sollten daher nicht dauerhaft zum Einsatz kommen (einzige Ausnahme ist hier Meiga). Darüber hinaus sind sie kein Ersatz für einen LAMP-Server.

Programme

Jibble

Der auf Java basierende und damit plattformübergreifend einsetzbare Webserver Jibble {en} bietet neben den Grundfunktionen ein sonst nur von vollwertigen Webservern bekanntes Merkmal: SSI (Server Side Includes). Auch die eingebaute Unterstützung verschiedener MIME-Typen ist praktisch. Eine Upload-Möglichkeit ist nicht vorhanden. Beispiel:

java -jar WebServerLite.jar ~/Downloads 8081 

Der Webserver ist über http://localhost:8081/ zu erreichen.

Python

Ohne Zusatzprogramme und damit noch einfacher in der Handhabung ist der in Python enthaltene SimpleHTTPServer {en} . Python ist in allen Ubuntu-Varianten in der Standardinstallation enthalten. Beispiel:

cd ~/Downloads && python -m SimpleHTTPServer 8082 

Der Webserver ist über http://localhost:8082/ zu erreichen. Eine Upload-Möglichkeit ist nicht vorhanden.

./droopy.png
Upload mit Droopy

Droopy

Bisher fehlt die Möglichkeit, Dateien hochzuladen. Mit dem ebenfalls in Python programmierten Droopy {en} können einzelne Dateien bequem hochgeladen werden. Nett ist die Möglichkeit, die Upload-Seite mit einem Bild zu verschönern. Eine Download-Möglichkeit ist nicht vorhanden. Beispiel:

python droopy.py -m "Einzelne Dateien hochladen" -d ~/Downloads 8083 -p ~/Bilder/bild.jpg 

Der Webserver ist über http://localhost:8083/ zu erreichen. Weitere Informationen liefert der Befehl:

python droopy.py -h 

SimpleHTTPServerWithUpload

Das folgende Skript ist in gewissem Sinn eine Alternative zu Droopy und stammt von bones7456 {zh}. Im Gegensatz zu Droopy sind hier aber Up- und Download-Möglichkeit in einem Programm vereint. Den Quellcode gibt es hier: SimpleHTTPServerWithUpload.py {dl}. Beispiel:

cd ~/Downloads && python SimpleHTTPServerWithUpload.py 8084 

Der Webserver ist über http://localhost:8084/ zu erreichen.

webfs

webfs {en} ist ein kleiner Webserver für statische Webseiten, der in den offiziellen Paketquellen enthalten ist. Folgendes Paket muss installiert [3] werden:

  • webfs (universe)

Wiki/Vorlagen/Installbutton/button.png mit apturl

Paketliste zum Kopieren:

sudo apt-get install webfs 

sudo aptitude install webfs 

Die Konfiguration erfolgt über die Datei /etc/webfsd.conf. Weitere Hilfe bietet die Manpage zu webfsd. Informationen zur Steuerung des Dienstes liefert der Befehl:

sudo /etc/init.d/webfs 

Weitere Möglichkeiten

Steht das Interesse am Versenden oder Empfangen von Dateien im Vordergrund, sind die folgenden Programme eine Alternative zu den oben genannten.

Kangee

Das auf Java basierende Programm ermöglicht einen Dateiaustausch im Stil von One-Click-Hostern über den eigenen Rechner. Technisch gesehen ein HTTP-Fileserver ermöglicht das Programm dem Benutzer, eine Datei in das Programmfenster zu ziehen und liefert eine URL zurück. Diese kann nun beispielsweise über Instant Messenger oder im Facebook Chat (der keinen Dateiaustausch erlaubt) an andere Personen versendet werden. Details im Artikel zu Kangee.

Meiga

Dieses noch junge Projekt hat sich zum Ziel gesetzt, das einfache Freigeben von Verzeichnissen über das Web zu ermöglichen. Im Gegensatz zu den bisher genannten Programmen kann der Zugriff bei Bedarf zum einen mit einem Kennwort eingeschränkt werden und zum anderen verschlüsselt erfolgen. Weitere Informationen im Artikel Meiga.

woof

Ein weiteres Python-Skript ist woof {en} , das erst ab Ubuntu 11.04 Natty Narwhal in den offiziellen Paketquellen enthalten ist. Es eignet sich für einzelne Dateien oder komplette Ordner, wobei letztere automatisch gepackt werden. Als Besonderheit ist ein Zähler vorhanden, mit dem sich die Anzahl der Downloads begrenzen lässt (Standard: 1x herunterladen). Beispiel:

python woof -p 8085 ~/Downloads/Dateiname 

Der Webserver ist über http://localhost:8085/ zu erreichen und liefert Dateiname aus. Anschließend beendet sich das Programm automatisch. Eine Upload-Möglichkeit (ebenfalls mit Zähler) ist vorhanden. Weitere Informationen liefert der Befehl:

python woof -h 

HFS

Der HTTP File Server {en} ist ursprünglich für Windows geschrieben worden, lässt sich aber über Wine auch unter Ubuntu ausführen. Verwaltet wird der Server über eine integrierte grafische Benutzeroberfläche. Standardmäßig ist er über http://localhost:8080/ zu erreichen, ist aber auch anders konfigurierbar. Interessant sind die Upload-Möglichkeit sowie die Verwaltung von Benutzern.

ubuntuusers.local › WikiInstant Webserver