LightHTTPd statt Apache auf der Box

yazoo83

Neuer User
Mitglied seit
8 Jul 2008
Beiträge
33
Punkte für Reaktionen
0
Punkte
0
Hallo zusammen,

da ich mich zugegebenermassen nicht grossartig mit makefiles (spezieller unter freetz) auskenne wollte ich mal fragen, ob es nicht theoretisch möglichwäre statt dem Webserver Apache den "Ersatz" lighthttpd (siehe http://www.lighttpd.net/) in den trunk einzubinden.

Generell hätte ich die Frage (sofern technisch irgendwie nur möglich), ob man nicht bei dem "grafischen" Menü (make menuconfig) nicht bei jeder Option eine Option setzen könnte, damit das entsprechende Paket auf den USB-Stick/HD via external ausgelagert werden könnte.
 
Sicher könnte man für fast jedes Paket (für manche ist es nicht sinnvoll) eine external Option machen, aber es gibt einige Gründe warum das noch nicht passiert ist: fehlendes Wissen, fehlende Zeit, fehlende Lust ;-)
Such dir einen für dich passenden raus.

MfG Oliver

edit: Ich hänge mal eine "Idee" für ein lighttpd package an. Es ist ungetestet und enthält wahrscheinlich auch noch Fehler in den Skripten. Die default config wird nach /tmp/flash/lighttpd/lighttpd.conf kopiert und sollte über das Webinterface unter Einstellungen->lighttpd.conf änderbar sein.
 

Anhänge

  • freetz_lighttpd.patch.bz2
    5.3 KB · Aufrufe: 25
Zuletzt bearbeitet:
ich nehme einfach mal $time(nil) :p

nun aber zum thema zurück...
schon beim patchen gehts leider los...

web6_admin@h1388152:~/freetz-trunk$ patch < patch1.patch
patching file Config.in
Hunk #1 FAILED at 95.
1 out of 1 hunk FAILED -- saving rejects to file Config.in.rej
patching file Makefile.in
patching file lighttpd
patching file lighttpd.conf
patching file lighttpd.def
patching file lighttpd.cfg
patching file rc.lighttpd
patching file lighttpd.mk
patching file Config.in

Die Datei Config.in.rej enthält folgendes:
***************
*** 95,100 ****
source make/iodine/Config.in
source make/irssi/Config.in
source make/jamvm/Config.in
source make/lynx/Config.in
source make/lua/Config.in
source make/madplay/Config.in
--- 95,101 ----
source make/iodine/Config.in
source make/irssi/Config.in
source make/jamvm/Config.in
+ source make/lighttpd/Config.in
source make/lynx/Config.in
source make/lua/Config.in
source make/madplay/Config.in
 
Füge diesen
Code:
source make/lighttpd/Config.in
Teil schlicht in die Config.in ein, am besten dort in der angedachten Stelle (vor lynx), ud schon geht es weiter.
 
Generell hätte ich die Frage (sofern technisch irgendwie nur möglich), ob man nicht bei dem "grafischen" Menü (make menuconfig) nicht bei jeder Option eine Option setzen könnte, damit das entsprechende Paket auf den USB-Stick/HD via external ausgelagert werden könnte.

Nein, es ist weder sinnvoll noch aus heutiger sicht technisch möglich. cuma hatte schon eine sehr gute Struktur für external ausgedacht, wo die .external-Dateien im jeweiligen Paket-Ordner liegen. Diese .external-Dateien sorgen erstmal dafür, dass die external-Optionen für das jeweilige Paket in menuconfig auftauchen. Zusätzlich dazu existiert aber noch ein external-Skript unter tools mit dem die eigentliche Auslagerung gemacht wird. In diesem Skript wird genau festgelegt, welche Datei von wo nach wo verschoben wird kurz bevor das Image gebaut wird. Will man ein Paket "externalisieren", sollte man diese beiden Dateien also ins Auge fassen. Rest kann man sich bei anderen Paketen "abgucken".

Das waren die Hintergründe. Nun zum eigentlichen "warum".
1. Ich weiß nicht, ob es jedem hier klar ist, dass das Auslagern der Dateien unter Umständen völlig in die Hose gehen kann, wenn es sich z.B. um Dienste oder Bibliotheken handelt.
2. Gerade auf die Idee Bibliotheken auszulagern kann man sehr schnell kommen, weil gerade die Bibliotheken meistens Platzfresser sind. Bibliotheken werden aber von mehreren Paketen benutzt, deswegen müssen diese Querabhängigkeiten überprüft werden, bevor man sich überhaupt entscheidet die Bibliotheken auszulagern.
3. Wie sollte man denn die Auslagerung automatisieren? Zu jedem Paket gehören meistens sehr viele Dateien. Ausgelagert werden aber nur höchstens 2-3 davon. Wie sollte man es automatisieren?

Also, ohne, dass jemand vorher die zu auslagernde Dateien per Hand mit einem menschlichen Verstand definiert und nachher ausreichend testet wird es nie gehen.

Es soll dich aber keinesfalls demotivieren. Wenn du den Anfang meiner Nachricht aufmerksam liest, weißt du was zu tun ist, ein Paket external-tauglich zu machen. Wenn du es gemacht und getestet hast, kannst du deine Änderungen als patch hier posten oder an jemanden schicken, der es in SVN einchecken kann.

MfG
 
Um das Beispiel mit den Bibliotheken zu vertiefen, kannst du z.B. die libcrypto auslagern, wenn du das möchtes.t Eigentlich funktioniert dann alles, bis auf das verschlüsselte WLan zur Bootzeit. Ein späterer Restart der entsprechenden Dineste allerdings tut seinen Zweck dann durchaus.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.