Erste Schritte mit Nginx Reverse Proxy

Erste Schritte mit Nginx Reverse Proxy

Überblick

Nginx Reverse Proxy: Reverse Proxy bedeutet, dass der Server basierend auf der Anforderung des Clients Ressourcen von einer oder mehreren Gruppen von Backend-Servern (z. B. Webservern) erhält und diese Ressourcen dann an den Client zurückgibt. Der Client kennt nur die IP-Adresse des Reverse Proxy, weiß jedoch nicht, ob der Servercluster hinter dem Proxyserver vorhanden ist.

Die Rolle des Reverse-Proxys

  • Verbergen Sie die IP-Adresse des Servers (Clusters) vor dem Client
  • Sicherheit: Als Firewall auf Anwendungsebene schützt sie Websites vor webbasierten Angriffen (wie DoS/DDoS, wodurch Malware leichter erkannt werden kann usw.).
  • Bereitstellung einer einheitlichen Verschlüsselung und SSL-Beschleunigung (z. B. SSL-Terminalproxy) für Back-End-Server (Cluster)
  • Lastverteilung: Wenn es im Cluster einen Server mit höherer Last gibt, schreibt der Reverse-Proxy die URL um und bezieht je nach Verbindungsanfrage dieselben Ressourcen oder ein Backup vom Server mit geringerer Last.
  • Bietet Cache-Dienste für statische und dynamische Inhalte, die in kurzer Zeit eine große Anzahl von Zugriffsanfragen haben
  • Komprimieren Sie Inhalte, um Bandbreite zu sparen oder Dienste für Netzwerke mit geringer Netzwerkbandbreite bereitzustellen
  • Hochladen verlangsamen
  • Bereitstellen einer HTTP-Zugriffsauthentifizierung

Üben Sie die Penetration des Intranets mit dem Nginx Reverse Proxy-Port 8081

Zweck: Port 8081 verbergen und auf Port 80 zugreifen, indem auf Port 80 zugegriffen wird

Implementierungsschritte

Wir haben die API auf Port 8081 konfiguriert und erfolgreich bereitgestellt. Jetzt ist 8081 öffentlich zugänglich, sodass darauf zugegriffen werden kann

Nehmen Sie die Ubuntu-Umgebung als Beispiel

$ cd /etc/nginx/
$ vim nginx.conf

Konfigurieren Sie den Reverse-Proxy für Port 8081 unter dem Nginx-HTTP-Knoten wie folgt

 Server {
        hören Sie 80 Standardserver;
        hören Sie [::]:80 Standardserver;
        Standort /api/ {
                        Proxy-Passwort http://127.0.0.1:8081;
                }

                Standort /apidocs/ {  
                        Proxy-Passwort http://localhost:8081/api/;
                        indizieren swagger-ui.html;
                        Fehlerseite 404 http://localhost:8081/api/swagger-ui.html;
                }
         }

Nachdem die Konfiguration abgeschlossen ist, starten Sie den Nginx-Dienst neu

$ service nginx restart

Besuchen Sie http://ip/apidocs/swagger-ui.html erfolgreich

Wir können die Server-Sicherheitsgruppenregeln deaktivieren, die 8081-Port-Sicherheitsgruppenregeln entfernen und uns zur Konfiguration bei Alibaba Cloud anmelden. Nehmen wir Alibaba Cloud als Beispiel. Dasselbe gilt für andere

http://ip/apidocs/swagger-ui.html ist weiterhin zugänglich

http://ip:8081/api/swagger-ui.html ist nicht zugänglich

Bisher haben wir den Zweck des Nginx-Reverse-Proxy-Ports 8081 erreicht, indem wir auf Port 80 zugegriffen und einen Proxy zu Port 8081 eingerichtet haben.

Konzentrieren Sie sich auf das Verständnis der Ngnix-Standort- und Proxy_Pass-Feldregeln

Implementierungsmethode 2: Upstream konfigurieren

Fügen Sie unter dem http-Knoten den Upstream-Knoten hinzu

Upstream-Demo { 
   Server-IP: 8080; 
   Server-IP: 8081; 
}

Konfigurieren Sie proxy_pass im Standortknoten unter dem Serverknoten auf: http:// + Upstreamname

Standort / { 
      Proxy-Passwort http://demo; 
}

Nginx-Konfiguration: HTTPS-Unterstützung

 ##
        # cnn SSL-Einstellungen hinzufügen
        ##
        Server{
                hören Sie 443;
                Servername demo.com;
                SSL aktiviert;
                SSL-Zertifikat /etc/nginx/cert/test.pem;
                SSL-Zertifikatsschlüssel /etc/nginx/cert/test.key;
                SSL-Sitzungszeitüberschreitung 5 Min.
                Standort / {
                							#Root-Domänenname oder IP
                                Proxy-Passwort http://demo.com;
                        }
        }

Zusammenfassen

Dies ist das Ende dieses Artikels über die Einführung in den Nginx-Reverse-Proxy. Weitere relevante Inhalte zum Nginx-Reverse-Proxy finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Nginx Reverse Proxy löst domänenübergreifende Probleme in verschiedenen Situationen
  • Implementierung der Nginx-Routing-Weiterleitung und der Reverse-Proxy-Standortkonfiguration
  • Implementierung des Nginx Intranet Standalone Reverse Proxy
  • Lernbeispiel für den Nginx Reverse Proxy
  • Nginx Reverse Proxy und detaillierte Verwendung

<<:  Lösung für das Problem, dass auf der utf8-kodierten Seite unter IE eine Zeile ohne Grund leer bleibt und die utf8-Seite nicht angezeigt werden kann

>>:  Beispielcode zur Realisierung des Ladeeffekts der B-Station mit CSS+SVG

Artikel empfehlen

Informationen zur Nginx-GZIP-Konfiguration

Das Prinzip von nginx zur Erzielung einer Ressour...

MySQL max_allowed_packet-Einstellung

max_allowed_packet ist ein Parameter in MySQL, de...

Eine kurze Diskussion zu this.$store.state.xx.xx in Vue

Inhaltsverzeichnis Sehen Sie sich dies an.$store....

Der Unterschied zwischen method=post/get in Form

Das Formular bietet zwei Möglichkeiten zur Datenüb...

JavaScript zum Erzielen eines einfachen Countdown-Effekts

In diesem Artikelbeispiel wird der spezifische Co...

Detaillierte Erklärung dieses Zeigeproblems in der JavaScript-Funktion

dieses Schlüsselwort Welches Objekt ruft die Funk...

Warum wird IE6 von den meisten Leuten verwendet?

In erster Linie bin ich Webdesigner. Genauer gesag...

So wird eine Select-Anweisung in MySQL ausgeführt

Inhaltsverzeichnis 1. MySQL aus einer Makroperspe...

Auszeichnungssprache - Anker

Zurück: Markup Language - Phrasenelemente Original...

Einfaches Schreiben von gespeicherten MySQL-Prozeduren und -Funktionen

Was ist eine gespeicherte Prozedur? Einfach ausge...

Implementierung der MySQL-Datentypkonvertierung

1. Problem Es gibt eine Tabelle wie unten gezeigt...

XHTML-Einführungstutorial: Webseitenkopf und DTD

Obwohl Kopf und DTD nicht auf der Seite angezeigt...

Vue verwendet Canvas, um den Bildkomprimierungs-Upload zu realisieren

In diesem Artikel wird der spezifische Code von V...

So implementieren Sie vertikale Textausrichtung mit CSS (Zusammenfassung)

Die Standardanordnung von Text in HTML ist horizo...