Verwendung von Nginx als Reverse Proxy

Verwendung von Nginx als Reverse Proxy
⏱️ 3 min read

Neben Apache ist Nginx der beliebteste Webserver auf dem Markt. Es ist nicht nur ein Webserver, sondern kann auch als Load Balancer oder Reverse Proxy verwendet werden. In diesem Tutorial zeigen wir Ihnen, wie Sie Nginx als Reverse-Proxy verwenden können.

Was ist ein Reverse Proxy?

Ein Proxyserver fungiert als Vermittler zwischen dem Client und einem anderen Server. Es ruft Ressourcen von dem Server ab, zu dem Sie eine Verbindung herstellen möchten, und sendet sie zur Anzeige an Sie. Ein Reverse-Proxy funktioniert genauso, außer dass die Rolle vertauscht ist. Wenn Sie Informationen von einem Server anfordern, nimmt der Reverse-Proxy die Anforderung entgegen und sendet sie an den entsprechenden Back-End-Server. Auf diese Weise kann der Systemadministrator einen Server für mehrere Anwendungen verwenden und einen reibungsloseren Verkehrsfluss zwischen Client und Server sicherstellen.

Vorteile eines Reverse Proxys

Abhängig von Ihrer Anwendung haben Sie möglicherweise unterschiedliche Anwendungsfälle für Reverse Proxy.

  • Mit einem Reverse-Proxy können Sie mehrere Anwendungen auf demselben Server ausführen – Wenn mehrere Anwendungen auf demselben Server ausgeführt werden, können nicht alle gleichzeitig Port 80 oder 433 abhören. Mit einem Reverse-Proxy können Sie den Reverse-Proxy so konfigurieren, dass der Datenverkehr nach Bedarf an einzelne Apps umgeleitet wird.
  • Lastverteilung – Wenn auf mehreren Servern dieselbe App ausgeführt wird, können Sie einen Reverse-Proxy verwenden, um den Datenverkehr gleichmäßig auf jeden Server zu verteilen.
  • Webanwendungs-Firewall – Sie können einen Reverse-Proxy verwenden, um Ihre Anwendung vor der Öffentlichkeit zu verbergen und um Spam-IP herauszufiltern oder vor einem DDOS-Angriff zu schützen.
  • Einfache Protokollierung und Überwachung – Da der gesamte eingehende Verkehr vom Reverse Proxy verwaltet wird, ist es einfacher, den Verkehrsfluss zu protokollieren und zu überwachen.

Konfigurieren von Nginx als Reverse-Proxy

Um Nginx als Reverse-Proxy einzurichten, verwenden wir die proxy_pass Parameter in Nginx-Konfigurationsdateien.

Hinweis: In diesem Tutorial wird davon ausgegangen, dass Sie über Nginx-Kenntnisse verfügen und Nginx bereits auf Ihrem Server installiert und eingerichtet haben.

In den meisten Anwendungsfällen ist Nginx der Front-End-Server, der Port 80 (HTTP) oder 443 (HTTPS) auf eingehende Anforderungen überwacht. Da es nur einen Dienst geben kann, der Port 80 oder 443 überwacht, muss Ihre Anwendung einen anderen Port wie Port 8081 überwachen. Die einfachste Konfiguration sieht ungefähr so ​​aus:

Dies bedeutet, dass alle eingehenden Anforderungen an myapp.com an Port 80 an Port 8081 umgeleitet werden.

Erweiterte Einrichtung

Zusätzlich zu proxy_pass Direktive gibt es mehrere andere Direktiven, die Sie für eine erweiterte Einrichtung verwenden können.

proxy_set_header – Auf diese Weise können Sie den Header festlegen, der an die Hintergrund-App gesendet werden soll. Siehe beispielsweise die folgende Konfiguration:

Sie können den erforderlichen Proxy-Header so einstellen, dass er an die Anwendung übergeben wird, damit diese die Anforderungs-IP und die Remoteadresse kennt, und den richtigen Inhalt für die Anforderungssite ausgeben.

Proxy-Timeout – Auf diese Weise können Sie den Zeitlimitwert für das Senden und Empfangen von Proxy-Anforderungen festlegen. Zum Beispiel:

proxy_buffers – Dadurch kann Nginx die Antwort des Proxyservers vorübergehend speichern und erst dann an den Anforderungsserver senden, wenn der Proxyserver die Antwort beendet hat. Zum Beispiel:

Wenn Ihre App einen großen Teil einer Datei senden soll, möchten Sie möglicherweise proxy_buffers deaktivieren:

Zusammenfassung

Wie Sie sehen können, ist Nginx ein leistungsfähiger Reverse-Proxy-Server. Das Beste daran ist, dass die Konfiguration einfach und benutzerfreundlich ist und Sie dennoch für kompliziertere Szenarien skalieren können. Weitere Informationen finden Sie im Dokumentation zum Nginx-Proxy-Modul oder der Konfigurationsbeispiele.

Bildnachweis: Reverse Proxy, Reverse Proxy

Join our Newsletter and receive offers and updates! ✅

0 0 votes
Article Rating
Benutzerbild von Routech

Routech

Routech is a website that provides technology news, reviews and tips. It covers a wide range of topics including smartphones, laptops, tablets, gaming, gadgets, software, internet and more. The website is updated daily with new articles and videos, and also has a forum where users can discuss technology-related topics.

Das könnte dich auch interessieren …

Abonnieren
Benachrichtige mich bei
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x