Du hast Fragen? Wir haben Antworten! - Bald findet unser nächster Tag der offenen Tür statt!

Logo site

Nginx: Alles, was man über diesen Open-Source-Webserver wissen muss

-
3
 Minuten Lesezeit
-
nginx

Nginx (ausgesprochen "engine-x") ist ein Open-Source-Webserver, der wegen seiner Geschwindigkeit, Flexibilität und Zuverlässigkeit an Popularität gewonnen hat. Seit seiner Einführung im Jahr 2004 ist NGINX eine beliebte Wahl für Webentwickler und Systemadministratoren geworden.

Die Geschichte von NGINX

Nginx wurde erstmals im Jahr 2002 von einem russischen Ingenieur namens Igor Sysoev mit dem Hauptziel entworfen, das C10K-Problem zu lösen. Das C10K-Problem bezieht sich auf die technische Herausforderung, gleichzeitig 10.000 Kundenverbindungen zu verwalten, eine Aufgabe, die für viele Webserver der damaligen Zeit schwierig war.

NGINX wurde 2004 nach zwei Jahren intensiver Entwicklung offiziell veröffentlicht und von der Technologiegemeinschaft wegen seiner Fähigkeit, eine große Anzahl gleichzeitiger Verbindungen bei geringem Speicherverbrauch zu verwalten, begeistert aufgenommen.

Heute ist NGINX als einer der beliebtesten Webserver der Welt anerkannt, wird von Millionen von Webseiten genutzt und von einer aktiven Gemeinschaft von Entwicklern und Systemadministratoren unterstützt. Er geht weiterhin an die Grenzen dessen, was Webserver leisten können, und bleibt dabei seinen Ursprüngen als effiziente und leistungsfähige Lösung für das C10K-Problem treu.

Was sind die wichtigsten Funktionen von NGINX?

NGINX bietet eine Reihe von Funktionen, die es extrem vielseitig machen und es in die Lage versetzen, eine Vielzahl von Anforderungen an die Bereitstellung von Webinhalten zu erfüllen?

Bild Webserver Als Webserver zeichnet sich NGINX durch seine Leistung und Effizienz aus. Im Gegensatz zu anderen Webservern, die für jede Verbindung einen Thread oder Prozess verwenden, nutzt NGINX eine ereignisgesteuerte Architektur. Dadurch kann es eine große Anzahl gleichzeitiger Verbindungen mit minimaler Nutzung der Systemressourcen verarbeiten. Dies ermöglicht eine höhere Anzahl von gleichzeitigen Clients mit geringerem Ressourcenverbrauch, was für stark frequentierte Websites ein signifikanter Vorteil sein kann.
Bild Reverse Proxy Ein Reverse Proxy ist ein Server, der zwischen den Clients und einem oder mehreren Webservern steht und Anfragen der Clients an die entsprechenden Server weiterleitet. NGINX kann als Reverse Proxy konfiguriert werden, um eine effiziente Verteilung des Datenverkehrs, Content-Caching und Schutz vor DDoS-Angriffen zu ermöglichen.
Bild Lastenausgleich Lastenausgleich (Load Balancing) ist eine Technik, bei der der Netzwerkverkehr auf mehrere Server verteilt wird, um die Ressourcennutzung zu optimieren, den Durchsatz zu maximieren, die Antwortzeit zu minimieren und eine Überlastung eines einzelnen Servers zu vermeiden. NGINX bietet robuste Lastenausgleichsfunktionen mit mehreren Verteilungsalgorithmen und der Möglichkeit, Lastenausgleich basierend auf der URL durchzuführen.
Bild HTTP-Caching NGINX kann auch als HTTP-Cache verwendet werden, um HTTP-Antworten lokal zu speichern und so die Antwortzeiten für bestimmte Anfragen zu beschleunigen. Durch das Speichern häufig angeforderter Antworten kann NGINX die Antwortzeiten verbessern und die Belastung des Ursprungsservers reduzieren.
Bild SSL & TLS-Unterstützung NGINX unterstützt SSL und TLS für sichere Kommunikation zwischen Client und Server. Es kann auch zur Beendigung oder Initiierung von SSL/TLS-Verbindungen verwendet werden, um die SSL/TLS-Verarbeitung von den Anwendungsservern zu entlasten und die Leistung zu verbessern.

Installation von NGINX

Die Installation von NGINX ist ein einfacher und direkter Prozess.

1. Installation auf Linux

Bei den meisten Linux-Distributionen kann NGINX direkt aus den Paket-Repositories installiert werden. So kannst du auf einem Ubuntu- oder Debian-System den folgenden Befehl verwenden:

				
					sudo apt-get update
sudo apt-get install nginx
				
			

Bei einer auf CentOS oder Fedora basierenden Distribution kannst du den folgenden Befehl verwenden:

				
					sudo yum install nginx
				
			

2. Installation unter Windows

NGINX wird unter Windows nicht offiziell unterstützt, aber es gibt eine Entwicklungsversion, die für Tests und unkritische Entwicklungen verwendet werden kann. Du solltest die neueste Version von NGINX unter dieser Adresse herunterladen und das Archiv entpacken.

3. Installation auf macOS

Unter macOS kannst du NGINX über Homebrew, einen beliebten Paketmanager für macOS, installieren. Du kannst also den folgenden Befehl verwenden:

				
					brew install nginx
				
			

4. Exécution du serveur NGINX

Nachdem du NGINX installiert hast, kannst du es mit dem entsprechenden Befehl für dein System starten. Auf einem Linux-System kannst du den folgenden Befehl verwenden:

				
					sudo service nginx start
				
			

Nachdem du NGINX gestartet hast, solltest du auf die Standard-Homepage von NGINX zugreifen können, indem du einen Webbrowser öffnest und zu http://localhost navigierst.

Grundlegende Konfiguration von NGINX

Sobald NGINX installiert ist, wird die Konfiguration mithilfe von Textdateien verwaltet, die sich im Konfigurationsverzeichnis von NGINX befinden, normalerweise /etc/nginx. Die Hauptdatei heißt nginx.conf, aber die meisten site-spezifischen Konfigurationen werden normalerweise in separaten Dateien im Unterverzeichnis sites-available abgelegt.

Um NGINX so zu konfigurieren, dass er eine einfache Website bedient, kannst du eine neue Konfigurationsdatei im Verzeichnis sites-available erstellen. Du könntest zum Beispiel eine Datei namens mywebsite mit folgendem Inhalt erstellen:

				
					server {
    listen 80;
    server_name mywebsite.com;
    location / {
        root /var/www/mywebsite;
        index index.html;
    }
}
				
			

Diese Konfiguration weist NGINX an, auf Port 80 auf Anfragen für mywebsite.com zu lauschen und Dateien aus dem Verzeichnis /var/www/mywebsite zu bedienen.

Nachdem du deine Konfiguration gespeichert hast, kannst du deine Website aktivieren, indem du einen symbolischen Link zu deiner Konfigurationsdatei im Verzeichnis sites-enabled erstellst und dann NGINX neu startest :

				
					sudo ln -s /etc/nginx/sites-available/mywebsite /etc/nginx/sites-enabled/
sudo service nginx restart
				
			

Deine Website sollte nun über NGINX erreichbar sein.

Fazit

NGINX ist ein robuster Webserver, der eine große Anzahl gleichzeitiger Verbindungen bei minimalem Ressourcenverbrauch bewältigen kann. Aber darüber hinaus macht seine Vielseitigkeit als Reverse Proxy, Load Balancer, HTTP-Caching und vieles mehr NGINX zu einer soliden Wahl für alle, die ihre Webinfrastruktur optimieren und sichern wollen.

 

💡 Auch interessant:

Spacy Open Source Bibliothek
Folium Open Source Bibliothek
Open Sourcre Definition
Open AI API

DataScientest News

Melde Dich jetzt für unseren Newsletter an, um unsere Guides, Tutorials und die neuesten Entwicklungen im Bereich Data Science direkt per E-Mail zu erhalten.

Möchtest Du informiert bleiben?

Schreib uns Deine E-Mail-Adresse, damit wir Dir die neuesten Artikel zum Zeitpunkt der Veröffentlichung zusenden können!
icon newsletter

DataNews

Starte Deine Karriere im Bereich Data: Erhalte regelmäßig Insiderwissen und wertvolle Karrieretipps in Deinem Posteingang.