[HowTo] Webserver Cherokee einrichten

  • Hallo, ich will euch hier mal kurz eine nette und vor allem schlanke Alternative zum Apache Webserver vorstellen. Den Webserver Cherokee. Er ist sehr schlank und sehr gut erweiterbar. Im folgenden will ich die Installation beschreiben sowie die einrichtung von php. Verbesserungsvorschläge werden immer gerne eingebaut.


    Weitere Informationen findest du auf der Projektseite : http://www.cherokee-project.com


    Über den Webserver
    Cherokee ist ein äußerst anpassungsfähiger und schneller Webserver. Er ist einbettbar und mit Plugins erweiterbar. Seine Fähigkeiten umfassen die Zuweisung von Verarbeitungsprogrammen zu Pfaden, virtuelle Server, Gzip-Komprimierung, modulare Logger, CGI-Unterstützung und mehr. Er kann in einer chroot-Umgebung laufen und ist sehr genügsam was die Ressourcen anbelangt.


    Hier will ich kurz die ersten Schritte mit Cherokee auf einem Debian Host beschreiben.


    Installation als Paket
    Installiere Cherokee einfach durch die Eingabe von

    Code
    apt-get install cherokee

    Installation aus dem Source
    Für alle die eine aktuelle Version haben möchten besteht die Möglichkeit den Webserver aus den Quellen zu bauen. Dieser Vorgang ist recht einfach zu erledigen. Als erstes statten wir unser Debian Image mit der notwendigen Software aus. Dies geschieht ganz einfach mit:

    Code
    apt-get install build-essential gettext

    Nun laden wir den aktuellen Source von Cherokee herunter mit:

    Code
    wget http://www.cherokee-project.com/cherokee-latest-tarball

    und entpacken diesen mit einem

    Code
    tar zxvf Dateiname

    Nun in das Verzeichniss von Cherokee wechseln und den configure Skript starten

    Code
    ./configure --localstatedir=/var --prefix=/usr --sysconfdir=/etc --with-wwwroot=/var/www

    Dem Configure skript können auch noch weitere Parameter übergeben werden. Besonders interessant sind hier zum Beispiel –with-wwwuser=USER um anzugeben als welcher User der Server läuft. Weitere Parameter sind der offizellen Dokumentation zu entnehmen.


    Das ganze sollte ohne weitere Probleme durchlaufen. Nun ist es an der Zeit den Buildprozess zu starten durch die eingabe von:

    Code
    make

    Sobald das ganze erfolgreich abgeschlossen wurde installieren wir Cherokee mit einem:

    Code
    make install

    Glückwunsch du hast nun den Cherokee Webserver aus den Quellen erfolgreich gebaut und installiert. Nun geht es an die Einrichtung.


    Die Einrichtung
    Ziel ist es einen Vollständigen und sauberen Webserver mit php Unterstützung einzurichten. Dies ist nur als Walkthrough zu betrachten und ersetzt nicht die Dokumentation der Serversoftware. Flasch Einrichtung kann die Sicherheit des Servers gefährden. Das befolgen dieser Anleitung geschieht auf eigene Gefahr. Ich rate dringend die Dokumentation der Software zu rate zu ziehen um eine Fehlkonfiguration zu vermeiden!


    Starte den Admin Server mit

    Code
    cherokee-admin -b

    Nun startet der Admin Server und du kannst auf diesem mit deinem Webbrowser zugreifen über deine ServerIP:9090 (z.B 123.123.192.100:9090) Dort mußt du das temporäre Kennwort eingeben welches dir cherokee-admin nennt. Die Ausgabe von Cherokee sieht etwa so aus:

    Im Webbrowser solltest du nun folgende Seite sehen:



    Wähle nun hier den Menüpunkt Allgemein aus und richte deinen Server nach deinen Wünschen ein. Die folgende Seite sollte denke ich selbstklärend sein.





    Wenn du fertig bist klicke links unten auf Speichern. Unter dem Menüpunkt Erweitert kannst du weitere Parameter einstellen. Die setzt aber tiefer gehende Kenntnisse vor raus!


    Es ist nun Zeit den Server auf der Status Seite zu starten!


    Nun wähle im Menü den Punkt Virtuelle Server aus. Die folgende Seite sollte sich öffnen:




    In diesem Abschnitt erstellst und verwaltest du eine Virtuellen Server. Default ist der Inhalt welcher der Besucher angezeigt bekommt wenn er zum Beispiel die ip des Servers aufruft. Durch das klicken auf den Servername in diesem Fall default kommst du auf eine weitere Seite auf der du alles was diesen Virtuellen Server betrifft einstellen kannst.





    Für weitere Informationen ziehe bitte das Handbuch zu rate da ein eingehen auf die einzelnen Punkte den Rahmen hier bei weitem sprengen würde.




    Nun wollen wir aber unsere php unterstützung installieren. Installiere mit apt-get den gewünschten php interpreten wie zum Beispiel php5-cgi (apt-get install php5-cgi). Nun gehe auf Virtuelle Server, wähle deinen Server aus (z.B default) und wechsel in den Reiter Verhalten und wähle dort unter der Tabelle Wizards aus. Category → Languages → php → Run Wizard


    Mehr Bilder sind nicht erlaubt siehe hier: http://forum.netcup.de/attachment.php?attachmentid=83&stc=1&d=1262464700

    Nun sollte php in deinem Paket aktiviert sein. Zum testen erstelle einfach eine Datei z.B test.php im www root mit dem Inhalt

    PHP
    <?php phpinfo() ?>

    Wenn du nun die Datei mit deinem Browser aufrufst solltest du eine Infoseite bekommen.


    So das war ein kurzer Rundgang durch Cherokee. Viel Spaß beim weiteren experementieren. Eine ausgezeichnete Anleitung findest du unter http://www.cherokee-project.com/doc


    In diesem Sinne

  • Hallo christian,

    danke für die arbeit, top Anleitung.

    Was verstehst du unter, ich darf dich kurz zitieren,


    Zitat


    nette und vor allem schlanke Alternative zum Apache Webserver vorstellen. Den Webserver Cherokee. Er ist sehr schlank und sehr gut erweiterbar.



    unter sehr schlank?

    Schlank ist ein relatives Wort.

    Da ich mit interesse bei bin, wird ich mich auf genauere Angaben sehr freuen.

    Lg

  • Cherokee ist schlank im Sinn von Ressourcenverbrauch, aber auch von seinem Auftreten her. Die Konfiguration ist z.B wesentlich übersichtlicher als die von Apache. Das ist der Grund warum ich zu Cherokee gekommen bin. Einen Apache bekomme ich nicht 100% ohne Hilfe konfiguriert, Cherokee schon.


    Viele Grüße
    Christian

  • Zitat von lupinix;11591

    Cherokee ist schlank im Sinn von Ressourcenverbrauch,


    Spezifischere angaben warn gefragt.


    Zitat von lupinix;11591

    Einen Apache bekomme ich nicht 100% ohne Hilfe konfiguriert, Cherokee schon.

    Viele Grüße
    Christian



    Dann heißt es üben belesen testen.


    Lg

  • Zitat von chitypo;11590


    Da ich mit interesse bei bin, wird ich mich auf genauere Angaben sehr freuen.

    Lg


    Hallo, erst einmal danke für dein Lob. Also unter schlank verstehe ich zum einen das wie Lupinix schon sagte die einrichtung sehr einfach ist und auch der Anspruch an den Server sehr viel niedriger ist. Ich kann dir jetzt zwar keine Zahlen nennen, aber der Server ist definitiv weniger anspruchvoll was die Systemressourcen angeht. Außerdem kann auch ein Einsteiger den Server gut anpassen. Genaue Zahlen findest du unter http://www.cherokee-project.com/benchmarks.html


    In diesem Sinne

  • Da ich mich nicht umbedingt auf Statistiken von den Entwicklern verlassen will:


    Wie siehts mit der realen Performance im Vergleich zu Apache2 bzw. Lighttpd aus?
    Konfigurationsbeispiele (Subdomains, Rewrites u.ä., keine Installation)?


    Wie wird der Server abgesichert? Wenn ich das richtig sehe gibt es ein Webinterface, somit also ne mögliche Sicherheitslücke. Kommt man da einfach so drauf?


    Denke das da ein wenig mehr Hintergrundinfos nicht schaden würden.


    Edit:


    Wie siehts denn mit mods dafür aus, gibts da eigene, sind die meisten integriert, oder muss sich da erst alles zusammenfrickeln? (suexec z.b.)

  • Den Cherokee hatte ich auch schon im Einsatz, wirklich leicht zu konfigurieren aber es macht keinen unterschied ob apache oder cherokee! Der einzige unterschied ist das du ein Webinterface hast was dem apache gottseidank fehlt, denn das ist nicht nur eine Sicherheitslücke in meinen Augen sondern fördert unter anderem nur das, dass man bequemer/fauler wird, das immer mehr leute die davon net wirklich Ahnung haben nen Server ans Netz hängen weilse keine configs mehr wühlen müssen. Klar er ist schlanker , verbraucht bei weitem nicht soviel Ressourcen, man sollte dazu allerdings abwägen das er auch viele schwächen hat. Bei vielen Besuchern geht er in die Knie (in meinem Fall warens wenn gleichzeitig ca 150 User auf der Site surften und nein die Ressourcen waren bei weitem nicht am ende) Probleme gabs auch beim rewrite (beim apachen bekannt unter mod_rewrite) war nur wiederwillig zum laufen zu bekommen.
    Instabil war er dann auch noch sobald zwei bis drei virtuelle Server liefen setzten die im 3 Stunden Takt aus ohne einen Grund. Die Prozesse haben sich beendet nicht neu gestartet ohne einen Grund.


    Also mein Urteil: Mal so zum testen ganz okay , für wirklich kleinere Pages wos nich so schlimm is wennse mal ausfallen wegen instabilen webserver kann mans nutzen.
    fürn Server mit verdammt knappen Ressourcen kann mans auch nutzen klar aber für nen wirklich Produktiven Einsatz kann ich nur apache oder lighttp empfehlen.


    MfG
    Andre

  • Also zwischen Cherokee und Apache besteht schon ein ordentlicher Unterschied was die Konfiguration angeht (per Texteditor). Das Webinterface kann man abschalten, wenn man darüber konfiguriert hat einfach cherokee-admin beenden.


    Hab gerade einen Test mit 8 virtuellen Servern am laufen, instabil ist da bisher nichts, vielleicht ist dein Test etwas länger her? Das mit der Performance bei vielen Usern kann ich nicht sagen, hab bisher nur einen Test im lokalen LAN am laufen.


    Ich bin bisher zufrieden mit dem Teil, kann ich doch wie es aussieht bald auf Dinge wie SysCP verzichten ;)


    Viele Grüße
    Christian

  • Bei mir zuhaus im LAN liefs auch reibungslos ^^ bis dann halt das aufn Server auch so laufen sollte. Der Test liegt vielleicht 4-6 Wochen zurück (da hab ich den wieder runter gehauen.) War Version 0.98 irgendwas.


    Klar ist es ein Unterschied zwischen den configs, sagte ich ja auch ^^ Auf SysCP würde mann dann verzichten können japs, wenn man ihn stabil zum laufen bekommt (Die Probleme wo er ständig abstürzte traten erst nach zwei Wochen auf) allerdings nur wenn du allein auf dem Server bist ;)


    MfG
    Andre

  • Ich will das Teil auch nur für meine private kleine Homepage nutzen, wenns wirklich zum Crash kommen solle also erstmal kein Weltuntergang.
    Wenn PHP gescheit läuft kommt vllt. noch ein Wiki hinzu, das wars dann aber auch.


    Viele Grüße
    Christian

  • Zitat

    Wenn PHP gescheit läuft kommt vllt. noch ein Wiki hinzu, das wars dann aber auch.


    Schön formuliert :D
    Ich wünsch dir viel Glück dabei ;) wenndes hinbekommen solltest das er dauerhaft und stabil läuft, kannst ja mal deine Config durchgeben dann test ichs mal nochmal. Wer weiß vielleicht lags an was anderem das er immer abschmierte. Den Grund hab ich nie rausgefunden da er das auch tat als wirklich garnixanderes mehr lief ausser ssh. Alle andern Dienste warn off


    MfG
    Andre