Jetzt sorgt der Website-Turbo NGINX für Spitzenleistung und so geht´s ...

Ist die Apache-Ära angezählt?

| Autor / Redakteur: Filipe Pereira Martins und Anna Kobylinska / Ulrike Ostler

Aktivieren und deaktivieren

Damit NGINX die virtuellen Hosts im Verzeichnis sites-enabled zur Kenntnis nimmt, müssen Sie in der Datei /etc/nginx/nginx.conf das Einlesen von Konfigurationsdateien aus dem Standardverzeichnis der Installation mit einem Kommentarzeichen # abschalten:

# include /etc/nginx/conf.d/*.conf;

und das Verzeichnis sites-enabled zum neuen Ablageort aktiver Konfigurationsdateien erklären, indem Sie unmittelbar in der nächsten Zeile und vor dem Ende des http-Abschnittes “}” Folgendes einfügen:

include sites-enabled/*;

Sobald Sie die nginx.conf-Datei abgespeichert haben, können Sie diese schließen.

Jetzt gilt es noch, die Verzeichnisse sites-available und sites-enabled zu erstellen:

mkdir /etc/nginx/sites-available

mkdir /etc/nginx/sites-enabled

In der zentralen Konfigurationsdatei von NGINX haben Sie den Server dazu angewiesen, Konfigurationsdateien lediglich aus dem Verzeichnis sites-enabled zu beziehen. In dem bisherigen Zustand Ihrer Konfiguration ignoriert NGINX das Verzeichnis sites-enabled aber komplett.

Hier ein Beispiel

Um NGINX zum Servieren der korrekten Websites anzuregen, genügt es schlicht und ergreifend, NGINX auf die gewünschten Konfigurationsdateien über passende Symlinks hinzuweisen.

Verwalten von virtuellen Hosts mit Hilfe von symbolischen Links (sites-enabled und sites-available)
Verwalten von virtuellen Hosts mit Hilfe von symbolischen Links (sites-enabled und sites-available) (Bild: NGINX)

Wollten Sie beispielsweise die Website www.datacenter-insider.de hosten, kopieren Sie die Standard-Konfigurationsdatei default.conf aus ihrem ursprünglichen Verzeichnis hier hinein und verleihen Sie ihr einen aussagekräftigen Namen Ihrer Wahl, zum Beispiel so:

cp /etc/nginx/conf.d/default.conf /etc/nginx/stes-available/www.datacenter-insider.de

Die so erstellte Konfigurationsdatei fungiert vorerst lediglich als ein Platzhalter, denn sie benötigt noch maßgeschneiderte Anpassungen. Unter Unix können Sie einen Symlink jedoch erst dann erstellen, wenn das Ziel im Dateisystem bereits vorhanden ist. Zum Erzeugen der gewünschten Symlinks (auf die bisher noch leeren Konfigurationsdateien) nutzen Sie diesen Befehl:

ln -s /etc/nginx/sites-available/www.datacenter-insider.de /etc/nginx/sites-enabled/

Soweit so gut. Jetzt steht Ihnen noch die eigentliche Konfiguration bevor.

Virtuelle Hosts: server{}- und location{}-Blöcke bearbeiten

Eine Website-Spezifische Konfigurationsdatei besteht aus mindestens einem server{}-Block, in dem sich ein oder mehr location{}-Blöcke befinden. Sie können sich natürlich von der Standardkonfigurationsdatei /etc/nginx/conf.d/default.conf und an offizieller NGINX-Dokumentation inspirieren lassen.

Im server{}-Abschnitt findet NGINX alle Anweisungen für eine bestimmte Website. In einem server{}-Block können Sie problemlos auch mehrere Hostnamen oder gar mehrere Domains erfassen, zum Beispiel:

server {

listen 80;

server_name www.datacenter-insider.de datacenter-insider.de;

Jeder server{}-Block darf über mehrere location{}-Abschnitte verfügen. Diese Abschnitte der NGINX-Konfigurationsdateien legen das Server-Verhalten im Zusammenhang mit den betreffenden URIs, zum Beispiel (location ~ \.php$ {}). Jeden dieser einzelnen location{}-Abschnitte sollten Sie an die Anforderungen Ihrer Website-Konfiguration anpassen.

Im Abschnitt location / {} legen Sie den Ablageort für das jeweilige Dokumentenverzeichnis - das Root-Verzeichnis - der gewünschten Website fest. In der nächsten Zeile legen Sie nun die Prioritäten der verschiedenen Dokumenttypen fest, zum Beispiel:

location / {

root /usr/share/nginx/www.datacenter-insider.de;

index index.php index.html index.htm;

}

Anweisungen wie eine Umleitung oder die allow/deny-Direktiven, die bei Apache in der Praxis typischerweise in .htaccess-Dateien eingetragen werden und direkt im Dokumentverzeichnis des Webservers zugänglich sind, gehören bei NGINX in die location{}-Blöcke der zugehörigen Konfigurationsdateien hinein (eine im Hinblick auf die Sicherheit wesentlich bessere Lösung).

Nach dem Abspeichern der Konfigurationsdatei und einem Neustart mittels:

service nginx restart

ist die maßgeschneiderte Installation nun vollbracht. NGINX ist nun bereit, statische Websites über seine virtuellen Hosts auszuliefern. Nach noch etwas mehr Tüfteln an den Konfigurationsdateien klappt auch die Anbindung an PHP mit Leichtigkeit.

Für die Übergabe von PHP-Skripten an den PHP-Interpreter lässt sich wahlweise mit Hilfe von Unix-Sockets oder TCP-Verbindungen implementieren.
Für die Übergabe von PHP-Skripten an den PHP-Interpreter lässt sich wahlweise mit Hilfe von Unix-Sockets oder TCP-Verbindungen implementieren. (Bild: NGINX)

TIPP: Wenn Sie schon den Schritt von Apache zu NGINX vollziehen, können Sie Ihren Frühjahrsputz noch entschlossener weiter voran treiben und die betagte Datenbank MySQL, die Oracle ja nicht mehr aktiv weiterentwickelt, durch ihren inoffiziellen Nachfolger „MariaDB“ ersetzen.

Inhalt des Artikels:

Was meinen Sie zu diesem Thema?

Schreiben Sie uns hier Ihre Meinung ...
(nicht registrierter User)

Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
Kommentar abschicken
copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Kontaktieren Sie uns über: support.vogel.de/ (ID: 42731067 / Middleware)