Der erste Teil dieses Nginx-Artikels befasste sich mit der Architektur und der Haupt-Nginx-Konfigurationsdatei. Dieser Artikel geht von dort aus weiter und spricht über die Nginx-Grundlagen: die benötigten Module und andere fortgeschrittene Konfigurationstechniken.
Die wahre Stärke von nginx liegt in seinen Modulen. Man kann sich vorstellen, dass der gesamte Stapel aus Modulen besteht, die die Fähigkeiten des Nginx-Kerns erweitern oder erweitern. Um sie verwenden zu können, müssen sie während des Kompilierens von der Quelle aktiviert werden und können nicht zur Laufzeit aktiviert werden.
Einige Module werden automatisch kompiliert, sofern nicht anders angegeben. Werfen wir einen Blick auf einige der interessanten und sehen Sie, welche weit verbreitet sind.
Zugriff (ngx_http_access_module): Dadurch kann der Zugriff auf bestimmte IP-Adressen eingeschränkt werden.
location / deny 192.168.1.1; 192.168.1.0/24 zulassen; 10.1.1.0/16 zulassen; erlaube 2001: 0db8 :: / 32; alles abstreiten;
HTTP Auth (ngx_http_auth_basic_module): Erlaubt die Beschränkung des Zugriffs durch HTTP Basic Auth (Benutzername / Passwort).
location / auth_basic "Passwort"; auth_basic_user_file conf / htpasswd;
Unteranfrage Auth (ngx_http_auth_request_module): Implementiert die Client-Autorisierung basierend auf dem Ergebnis einer Unteranfrage.
Verbindungen begrenzen (ngx_http_limit_conn_module): Hier können Sie die maximale Anzahl gleichzeitiger Verbindungen von einer einzigen IP-Adresse aus festlegen.
Anforderungen begrenzen (ngx_http_limit_req_module): Begrenzt die Anzahl der Anfragen von einer einzelnen IP.
Die meisten Module, die in nginx enthalten sind und während des Kompilierens aktiviert werden können, sind hier ausführlich aufgeführt. Schauen wir uns stattdessen einige Module von Drittanbietern an, die wirklich hilfreich sein können.
Diese Module müssen heruntergeladen und dann mit nginx kompiliert werden, wie Sie es in der folgenden Codezeile sehen (vorausgesetzt, Sie arbeiten im nginx-Quellverzeichnis):
./ configure --add-module = / pfad / zu / modul / source
Das Nginx-Wiki listet einige der bekannten Module von Drittanbietern auf. Lassen Sie uns über ein Modul sprechen, das Webseiten und zugehörige Assets neu schreibt, um Latenz und Bandbreite zu reduzieren.
Dies ist ein von Google im Rahmen des PageSpeed-Projekts entwickeltes Nginx-Modul. Der Zweck besteht offensichtlich darin, die Ladezeiten von Seiten mithilfe eines verkehrsoptimierenden nginx-Moduls zu verbessern.
Sie können dieses Modul installieren, indem Sie dem Lernprogramm 'ngx_pagespeed installieren' folgen. Dieses Modul wird dringend als Muss auf Ihren Servern empfohlen!
Live-Streaming, Aufzeichnung, Online-Transcoding, fortgeschrittene Puffertechniken. Es ist sehr einfach, mit dieser Funktion zu beginnen.
Ein http-Stream-Push-Modul für Nginx. Unterstützt EventSource Long-Abfrage. Beispiel: WebSocket.
Bei der Verwendung von Nginx wird es auch wichtig, die folgenden unterstützenden Nginx-Dienstprogramme zu verwenden: