So richten Sie Nginx Reverse Proxy ein Schritt-für-Schritt-Tutorial ein

So richten Sie Nginx Reverse Proxy ein Schritt-für-Schritt-Tutorial ein

Ein Reverse -Proxy ist ein Servertyp, der zwischen einem Client und einem Server sitzt und als Vermittler zwischen den beiden fungiert. Es akzeptiert die Anfragen von Clients, leitet diese Anfragen an den entsprechenden Server weiter und gibt dann die Antwort des Servers an den Client zurück.

Reverse -Proxys werden häufig verwendet, um die Leistung und Sicherheit von Webservern zu verbessern und mehrere Server als einzelne Server für Clients zu erscheinen. Beispielsweise kann ein Reverse -Proxy verwendet werden.

Eine beliebte Software zum Konfigurieren eines Reverse -Proxy ist Nginx (ausgesprochen „Engine X“). In diesem Artikel werden wir mithilfe eines Beispiels erläutert, wie Sie einen Reverse -Proxy mit Nginx konfigurieren können.

Schritt 1: Installieren Sie Nginx

Der erste Schritt besteht darin, Nginx auf Ihrem Server zu installieren. Dies kann in der Regel mit dem Paketmanager Ihres Betriebssystems (e) durchgeführt werden.G. APT-GET-GEND DEBIAN-BASISSE SYSTEMS, DNF auf Red Hat-basierten Systemen).

sudo apt update && sudo apt install nginx  
sudo dnf install nginx  

Schritt 2: Konfigurieren Sie die Backend -Anwendung

Eine Backend -Anwendung sollte auf einen anderen Port zuhören. Zum Beispiel habe ich einen Beispielknoten erstellt.JS -Anwendung, die eingehende Anforderungen mit dem Knoten Express -Modul dient. Diese Anwendung hört auf Localhost und Port 3000 zu.

Knotenserver.JS 
Ausgabe -Debugger -Hören auf Port 5858 Server, der unter http: // 127 ausgeführt wird.0.0.1: 3000/ 

Schritt 3: Konfigurieren Sie den Nginx -Serverblock

Nginx verwendet Serverblöcke, um einzelne Websites zu konfigurieren. Wir müssen eine neue Server -Block -Konfigurationsdatei für unseren Reverse -Proxy erstellen.

sudo nano/etc/nginx/conf.D/Reverse-Proxy.Conf  

Fügen Sie der Server -Block -Konfigurationsdatei die folgende Konfiguration hinzu:

Server Listen 80; server_name Beispiel.com; location/proxy_pass http: // 127.0.0.1: 3000; proxy_set_header host $ host; proxy_set_header x-real-ip $ remote_addr; proxy_set_header x-forward-for $ proxy_add_x_forwarded_for;
1234567891011Server Listen 80; server_name Beispiel.com; location/proxy_pass http: // 127.0.0.1: 3000; proxy_set_header host $ host; proxy_set_header x-real-ip $ remote_addr; proxy_set_header x-forward-for $ proxy_add_x_forwarded_for;

In der obigen Konfigurationsdatei:

  • Hören Sie 80; Definiert den Port, auf dem Nginx auf eingehende Verbindungen hört.
  • server_name Beispiel.com; ist der Domainname, mit dem auf den umgekehrten Proxy zugreifen wird.
  • proxy_pass http: // backend-server; fordert Nginx an, die eingehenden Anforderungen an den angegebenen Backend -Server weiterzuleiten.
  • proxy_set_header host $ host; und proxy_set_header x-real-ip $ remote_addr; und proxy_set_header x-forward-for $ proxy_add_x_forwarded_for; werden verwendet, um Header festzulegen, mit denen der Backend -Server den ursprünglichen Client identifizieren kann.

Schritt 4: Nginx neu starten

Testen Sie vor dem Neustart des NGINX -Dienstes die Konfigurationsdateien mit dem folgenden Befehl:

sudo nginx -t  

Wenn der Konfigurationstest erfolgreich ist, starten Sie Nginx neu, um die Änderungen anzuwenden:

sudo systemctl starten nginx neu  

Hinweis: Dies ist ein grundlegendes Beispiel, und in Wirklichkeit müssen Sie möglicherweise andere Einstellungen wie SSL, Caching und Sicherheit konfigurieren. Möglicherweise müssen Sie NGINX auch so konfigurieren, dass verschiedene Arten von Anforderungen verarbeitet werden, z. B. die Bearbeitung von Websockets oder das Servieren statischer Dateien. Darüber hinaus ist es auch wichtig, die Leistung und Skalierbarkeit Ihres Nginx -Reverse -Proxys zu berücksichtigen, insbesondere wenn Sie ein hohes Verkehrsvolumen erwarten.

Um Ihren Reverse -Proxy zu sichern, können Sie SSL -Zertifikate verwenden. Sie können Let's Encrypt verwenden, um ein kostenloses SSL -Zertifikat zu erhalten. Sobald Sie das Zertifikat haben, können Sie Nginx so konfigurieren, dass es es verwenden kann.

Für das Caching können Sie die Anweisungen proxy_cache_path und proxy_cache_bypass verwenden, um Caching für Ihren umgekehrten Proxy zu konfigurieren.

Abschluss

Zusammenfassend kann der NGINX Reverse Proxy ein leistungsstarkes Tool zum Verwalten mehrerer Webserver und zur Verbesserung der Leistung und Sicherheit Ihrer Webanwendungen sein. Ich hoffe.