Nginx

Beispiel und Anleitungen rund um den Nginx (Webserver)

nginx_logo_klein2

Rewrite-Rules: Apache vs Nginx

1

Bei dem Apache Webserver wird das URL-Handling (Rewrite-Rules) via .htaccess gesteuert, sobald sich eine Datei mit diesem Namen in einem Verzeichnis befindet, werden die darin enthaltenen Befehle vom Apache umgesetzt. Da dieses Verfahren jedoch voraussetzt, dass alle Verzeichnisse zuvor auf eine solche Datei geprüft, diese anschließend eingelesen und verarbeitet werden muss, macht es Sinn wie z.B. beim Nginx Webserver diese in die Konfiguration des Webs aufzunehmen. Leider ist die Syntax und Logik dieser beiden Rewrite-Rules nicht kompatibel, daher folgt eine Einführung in dieses Thema … außerdem habe ich auf github.com/voku/ meine kompletten Konfigurationsdaten für Nginx + PHP + MySQL hochgeladen.

 

Erklärung: einfache Weiterleitung

 

Apa­che:

Redirect More >

nginx_logo_klein2

Nginx + Varnish auf Debian/Ubuntu

1
Zurück zur “Webseiten beschleunigen” – Übersicht 5.4) Nginx mit Varnish

“Varnish ist ein Web-Beschleuniger für dynamische Web-Seiten mit viel Inhalt. Im Gegensatz zu anderen Web-Beschleunigern, die häufig aus clientseitigen Proxies oder aus Servern entstanden, wurde Varnish von Grund auf als Web-Beschleuniger konzipiert.” – Wiki

Als erstes erweitern wir unsere sources.list, so dass wir die Varnish-Software einfach installieren / updaten können:

Ubuntu:

echo "http://repo.varnish-cache.org/ubuntu/ lucid varnish-2.1" >> /etc/apt/sources.list

Debian:

echo "deb http://repo.varnish-cache.org/debian/ lenny varnish-2.1" >> /etc/apt/sources.list

Nun installieren wir Varnish…

curl http://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add - aptitude install varnish

Nun müssen wir More >

nginx_logo_klein2

Nginx + WordPress

2

Ich habe bereits in einem vorherigem Blog-Post erklärt, wie du “Nginx” (Webserver) unter Debian und / oder Ubuntu installierst. Heute zeige ich mit einigen Beispielen, wie du Nginx konfigurierst, diese Einstellungen werden in dem entsprechendem “Virtual Host” (/etc/nginx/sites-enabled/*.conf) durchgeführt.

## Slash am Ende anfuegen if ($request_uri ~* "^[\w\-\/]+[^\/?]$") { rewrite ^(.*)$ $scheme://$host$1/ permanent; } ## entferne doppel-slashes // if ($request_uri ~* "\/\/") { rewrite ^/(.*) $scheme://$host/$1 permanent; } ## www eifuegen if ($host !~* ^(www|subdomain)) { rewrite ^/(.*)$ $scheme://www.$host/$1 permanent; } ## www vorne entfernen if ($host ~* ^www\.(.*)) { set $host_without_www $1; rewrite ^(.*)$ http://$host_without_www$1 More >
nginx_logo_klein2

Debian/Ubuntu Paket selber bauen (Nginx)

2

Heute zeige ich, wie du dir deinen eigenen Webserver (Nginx) als .deb-Paket bauen und installieren kannst… In einem vorherigen Beitrag hatte ich bereits beschrieben, wie du PHP5-fpm mit Nginx installieren kannst. Da ich folgenden Fehler bei dem Update auf Version 0.9.1 bekommen habe ->

Can't locate nginx.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.10.1 /usr/local/share/perl/5.10.1 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.10 /usr/share/perl/5.10 /usr/local/lib/site_perl .). BEGIN failed--compilation aborted. 

<- wurde das deb-Paket kurzerhand neu-gebaut und zwar ohne Perl-Unterstützung.

1.) Root werden und einiges ggf. nachinstallieren + die Quellen (deb-src) herunterladen sudo bash aptitude install build-essential devscripts fakeroot debhelper autotools-dev More >
nginx_logo_klein2

Nginx + PHP5-fpm auf Debian/Ubuntu

22
Zurück zur “Webseiten beschleunigen” – Übersicht 5.3) Nginx als Webserver

Wer komplett auf nginx als Webserver umsteigen will kann dies auch sehr einfach bewerkstelligen. Ich persönlich nutzte diese Methode und es laufen mehrere WordPress-Webseiten, e107, DokuWiki u.s.w. tadellos mit diesem System.

Als erstes müssen wir unsere sources.list ein wenig erweitern… um php5-fpm direkt mit dem Projektmanager installieren zu können, wie dies Funktioniert habe ich bereits in einem anderen Beitrag beschreiben: php-5-FPM

Danach installieren wir nginx (Webserver) + PHP, wenn du noch apache2 oder einen anderen Webserver, welcher auf Port 80 lauscht installiert hast, musst du diesen nun deinstallieren bzw. erst einmal stoppen und ggf. einige libraries nachinstallieren, falls du Ubuntu und nicht More >

pingdom

Webseiten Analyse

8
Zurück zur “Webseiten beschleunigen” – Übersicht 1.) Webseiten Analyse

Dies ist der Erste Teil von meiner Blog-Reihe “Webseiten beschleunigen”. Um die ursprüngliche Ladegeschwindigkeit deiner Webseite zu prüfen, installieren wir uns zwei Erweiterungen für Firefox.

Firebug + YSlow

ggf. kann man sich auch nach die nachfolgenden Links anschauen, jedoch habe ich mit der Kombination „ Firebug + YSlow“ sehr gute Erfahrungen gemacht, daher folgt nun diesbezüglich ein kleines Video.

Alternative von Google:

Firebug + Page-Speed

Alternative Online-Analyse:

Bisher habe ich nur zwei Online-Analyse-Dienste gefunden, welche mir wirklich geholfen haben.

a.) Auf Pingdom.com kannst du die Ladezeit deiner Webseite und dessen Inhalt sehr schön in einem Graphen sehen und Schwachstellen somit sehr More >

nginx_logo

Webserver beschleunigen

2
Zurück zur “Webseiten beschleunigen” – Übersicht 5.) Webserver beschleunigen 5.1) Apache-Module deaktivieren

Ggf. kann man auch einige Module (Erweiterungen) von Apache abschaltet, wer z.B. auf seiner Webseite gar keine SSL-Verschlüsselung verwendet, könnte das entsprechende Modul deaktivieren.

a2dismod ssl /etc/init.d/apache2 restart

Die momentan aktiven Erweiterungen kann man unter “/etc/apache2/mods-enabled/” einsehen, die installierten Erweiterungen sind unter “/etc/apache2/mods-available/” zu finden.

Dynamische Seiten: – mod_log_config erlaubt die access_log-Dateien in div. Formaten. - mod_cgi braucht man, wenn man CGI zulassen will. – mod_suexec erlaubt CGIs als ein bestimmter User zu laufen. – mod_perl braucht man nicht um Perl als CGI auszuführen! – mod_php5 ist schneller More >

tacho

Webseiten beschleunigen – Übersicht

8

Der Artikel beschreibt, wie man seine Webseite bzw. seinen Server analysiert und optimiert um Performance zu gewinnen, Ladezeit zu reduzierten bzw. Traffic einzusparen. Man kann einiges an Performance gewinnen, indem man z.B. Bilder im richtigen Format abspeichert bzw. komprimiert, CSS- / JS-Dateien kombiniert und ebenfalls komprimiert oder auch bestimmt Daten vorkomprimiert zur Verfügung stellt.

1.) Webseiten Analyse 1.1) Webseiten Benchmark

2.) Komprimierung 2.1) Bilder komprimieren 2.1.1) Bilder Sprites 2.1.2) PNG-Bilder komprimieren 2.1.3) JPEG-Bilder komprimieren 2.1.4) Bilder komprimieren – Online 2.2) JavaScript/CSS komprimieren 2.2.1) JavaScript/CSS komprimieren – serverseitig 2.2.2) JavaScript/CSS komprimieren – Online 2.3) Apache gzip-Kompression 2.3.1) Aktiviere More >

.htaccess & Mod-Rewrite

7

“Eine Rewrite-Engine ermöglicht es, an den Webserver gerichtete Anfragen intern umzuschreiben oder extern weiterzuleiten.” – Wiki

 

1.) Seiten ohne subdomain (http://domain.de) 2.) Seiten mit www (http://www.domain.de) 3.) Schrägstrich hinzufügen 4.) Eine einfache Weiterleitungen 5.) alle Anfragen auf ein Unterverzeichnis auf die Hauptseite weiterleiten 6.) Bilder von Ihrer domain schützen 7.) SSL-Verbindung an einen SSL-Proxy weiterleiten 8.) Verbindungen auf Port umbiegen 9.) Sub-Domain umleiten 10.) Client aussperren 11.) Umleiten der Anfrage 12.) Neue Index-Datei 13.) Webseiten Zugriff schützen 14.) ErrorSeite umleiten 15.) Slash am Ende einer Datei entfernen 16.) doppelten Slash in der URL entfernen 17.) Dateien sperren 18.) .htaccess umbenennen 19.) More >

Go to Top