Direkt zum Hauptbereich

Webserver: nginx mit PHP als FastCGI unter Linux

Dieses Intro machte mich stutzig:

"Immer mehr Websites wechseln von Apache zu Nginx. Der innovative Webserver hat jüngst sogar Microsofts IIS überholt. ZDNet veröffentlicht Benchmarks und zeigt, wie man seine Website richtig migriert, ohne Ausfälle befürchten zu müssen." (Quelle)

So begann ZDnet.de seine dreiseitige Reihe mit Benchmarks zum Thema

Mehr Leistung im WWW: Nginx statt Apache nutzen

Dort ist nachzulesen, wie der neue Server entstand und was er kann.
Kurz: [engine X] wurde entwickelt für eine große russische Suchmaschine und als OpenSource verfügbar, dabei maßgebend der Unterschied, dass nginx nur Events behandelt; Apache operiert nach Threads.

Daher ist nginx bei statischen Seiten schneller, weil es ja hier einfach um Auslieferung handelt. Was hinter dem Webserver passiert wie PHP oder MySQL kann zwar ein Nadelöhr sein, betrifft den Server aber nur am Rande, denn dieser "serviert" das fertige Produkt ja nur.

Folgendes Zitat bringt es ganz gut auf den Punkt:

"Apache is like Microsoft Word, it has a million options but you only need six. Nginx does those six things, and it does five of them 50 times faster than Apache."(Chris Lea on nginx and wordpress; Quelle)

Motiviert für den Versuch war ich dadurch, dass sobald Apache mit MySQL liefen, mein System langsamer wurde, obwohl ich nichts über localhost passierte; und auch sonst fand ich ihn etwas langsam für lokal gespeicherte Daten.

Hier aber erstmal einige Punkte, die unterschiedlich sind:
  • man muss u.U. zusätzliche Paketquellen unter Linux aktivieren
    oder gar nginx selber kompilieren.
    (hier meine ich die Quelle EPEL bzw. REMI)
  • es gibt keine htaccess-Dateien, so dass solch Einstellungen selber hergestellt werden müssen, sofern man ein fertiges Softwarepaket installierte.
Und gerade letzteres ist ein großes Plus für nginx, weil Apache angeblich permanent die htaccess-Dateien überwacht, in jedem Ordner und bei jeder Anfrage an den Server - nginx löst dies zentral.

Folgt fürs Installieren einfach folgenden Blogs:
Im Gegensatz zu Apache ist nämlich nicht ALLES per default aktiviert, so dass man z.B. SSL oder PHP aktivieren muss.
Gerade letzteres muss über php-fpm als fastcgi-Eintrag geändert werden.




Fehlerquellen:
Nach Befolgen der obigen Tipps und Tricks und natürlich einiger Zeit fürs Finden ebensolcher habe ich nginx sowohl auf CentOS 6.2 als auch auf Fedora 16 installierte, jeweils mit PHP als FastCGI und MySQL.

Wer nun auch mehr erfahren möchte, der seit vertröstet, dass nginx sehr gut neben Apache installiert werden kann, und beide sich auch mögen.
Ebenso ist es möglich, dass nginx Apache für gewisse Dienste anspricht.
Auf diese Weise ist eine Konfiguration möglich, dass nginx statische Seiten und Apache den Rest serviert.

Wie der Test von ZDnet aber schon zeigte, kann nginx sehr gut mit PHP umgehen, und da mein Testserver nur ein Pentium 4 mit all den damaligen Resssourcen ist, wollte ich einen Werbserver mit wenig Anspruch.
Bei Zeiten werde ich diesen mit meinen SchülerInnen testen, indem ich z.B. eine moodle-Instanz darauf laufen lasse.

Leider gibt es zu nginx nicht sehr viele Bücher, denn ich mag es manchmal doch ganz gerne, in etwas blättern zu können;
würde aber für Einstellungen weiter als das bloße Installieren eher zu diesem raten:



Kommentare

Beliebte Posts aus diesem Blog

Pflanzsack aus Jute

Nachdem ich die Bücher vom Arche Noah Verein schon vorstellte, möchte ich hier eine Topfalternative zeigen, die obendrein noch dekorativ ist. Pflanzsäcke Oder "grow bags", wenn man etwas moderner daher komme möchte bzw. mehr Suchergenisse will. Dabei wollte ich wenig Geld ausgeben, und auch nicht ganz spartan bleiben und den Blumenerdesack dafür nutzen; und bestellte mir 50 kg Jutesäcke für ca. 1,20 EUR/Stück. Nimmt man den ganzen Sack, wird der Topf schon recht groß, auch wenn man etwas des Materials nach innen oder außen faltet. Also nahm ich mir die Freiheit und nähte aus einem großen vier kleine und verbrauchte den letzten Rest unserer Erde fürs Umtopfen der Habanero. Die machte nämlich nun Platz für die sibirische Hauschili und die restlichen von beiden Sorten mischte ich zusammen und stellte sie auf die Fensterbank. Der Vorteil dieser Art von Töpfen liegt auf der Hand: sie sind billig im Vergleich zum Volumen sie sind dekorativ - wirken rustikal biet...

rails + carrierwavve + plupload = multiple file upload

Right now I am very happy! I finished my work on creating a file upload method in rails for more than one file, altogether handled by rails sessions and as objects. First I had to learn a bit more about how rails works and I achieved that by reading a lot: books, screencasts and blogs. In this blog post I like to share what I accomplished, but without the hussle of putting code blocks in here, so watch out for bold formatted text as that is the code. My goal was to have one site with just the pure option of uploading files. All file handling would be done behind the scenes by myself logging onto my server. That said you are not going to see any fancy CRUD here. Lets start then! And dont forget to versioning your app BEFORE you try something new! [e.g. git] > rails g scaffold Photo title:string Now add carrierwave to you Gemfile and run > bundle install >rails g uploader Photo Alltogether you have model, controller, views and an uploader folder with the Ph...

Serienbrief für Einladungen mit LaTeX bzw. XeTeX

Bei uns im Hause wird gerade eingeladen, also wollte ich meine Kenntnisse in LaTeX nutzen, um dies "schön" zu machen. Dabei sollte man dann einfach anstatt LaTeX XeTeX nehmen, welches durch fontenc sämtliche Schriften des laufenden Systems verwenden kann. Und wenn man dann die Leute eingetragen hat in eine solche Tabelle: Hans;Wurst;0 Klaus;Müller;1 Maria;Müller;0 Peter;Huber;2 Katrin;Ingens;0 Dann kreiert folgender Code drei Querseiten a la: -------------------------------------------------------------- |                            |                               | |     Namen            |     ...