Wie leitet man URLs mit NGINX um? (Temporär permanent)

Veröffentlicht: 2024-01-26

Inhaltsverzeichnis
Was ist Umleitung?
Was ist für die Nginx-Umleitung erforderlich?
Gängige Nginx-Umleitungsmethoden (vorübergehend und dauerhaft)
So leiten Sie URLs mit Nginx um (temporär und permanent)
Überprüfen Sie die Nginx-Syntax
Starten Sie den Nginx-Server neu
Zusammenfassung
Häufig gestellte Fragen

Was ist Umleitung?

In Bezug auf Nginx ist die Umleitung eine Webserverfunktion, bei der der Website-Verkehr von einer URL zu einer anderen verschoben wird. Dies ist eine der nützlichsten Funktionen, mit der Sie Besucher ganz einfach automatisch an einen anderen Ort umleiten können.

Obwohl Sie zahlreiche Arten von Weiterleitungen durchführen können, sind die beiden wichtigsten und am häufigsten verwendeten die permanente (301) und die temporäre Weiterleitung (302).

In diesem Beitrag zeigen wir Ihnen Umleitungsmethoden anhand von Beispielen wie von www zu nicht-www, Nginx-Umleitung zu einer Domain, Nginx-Umleitung von HTTP zu HTTPS usw.


Lesen Sie: Wie funktioniert die WordPress-Redirect-URL? Die 5 besten Methoden


Was ist für die Nginx-Umleitung erforderlich?

  • Nginx bietet eine der entscheidenden Funktionen, nämlich die Umleitung von Website-URLs an eine andere Adresse basierend auf Kriterien.
  • Nginx-Weiterleitungen sind sehr benutzerfreundlich und einfach zu konfigurieren, wodurch die Verwaltung von Website-URLs sehr flexibel ist.
  • Dies ist sehr nützlich, um das SEO-Ranking einer Seite beizubehalten, insbesondere wenn Sie von einem CMS auf ein anderes migrieren.
  • Die Umleitungsfunktion hilft auch dabei, die SERP-Position trotz Änderungen in der URL-Struktur beizubehalten.

Gängige Nginx-Umleitungsmethoden (vorübergehend und dauerhaft)

Wie bereits erwähnt, stehen mehrere Arten von Umleitungsmethoden zur Verfügung, in der Praxis werden jedoch nur zwei häufig verwendet, nämlich die temporäre und die permanente Umleitung.

Temporäre Weiterleitung (Antwortcode: 302 gefunden)

  • Anhand des Namens selbst können Sie bereits erahnen, welche Wirkung eine vorübergehende Medikation haben wird. Nun, diese Methode dient dem Zweck, den Standort einer Seite vorübergehend von einem Ort zum anderen zu ändern.
  • Der Antwortcode: 302 Found wird verwendet, um die vorübergehende Weiterleitung einer Seite während dieser Weiterleitungen anzuzeigen.
  • Es wird hauptsächlich während der Website-Wartung verwendet; Die vorübergehende Umleitung informiert den Verkehr oder Benutzer über die vorübergehende Nichtverfügbarkeit der Website.
  • Es kann auch verwendet werden, um eine unvollständige Seite zu einem anderen Punkt oder einer anderen Homepage umzuleiten.
  • Beispielszenario: Der Besucher navigiert zur Website-Seite, wird jedoch aufgrund von Wartungsarbeiten zu einer Benachrichtigung weitergeleitet, die darauf hinweist, dass die Website derzeit gewartet wird.
Temporary Redirection
Temporäre Weiterleitung (Antwortcode: 302 gefunden)

Permanente Weiterleitung (Antwortcode: 301 gefunden)

  • Die permanente Nginx-Umleitung wird verwendet, um eine Seitendomäne dauerhaft zu verschieben.
  • Eine 301-Weiterleitung wird in diesem Zusammenhang verwendet, um die dauerhafte Bewegung einer Seite anzuzeigen.
  • Diese Umleitung wird hauptsächlich verwendet, wenn ein Benutzer einen Domainnamen ändern möchte und nicht mehr möchte, dass der Website-Verkehr auf den alten Standort zugreift.
Permanent Redirection
Permanente Weiterleitung (Antwortcode: 301 gefunden)

So leiten Sie URLs mit Nginx um (temporär und permanent)

Bevor wir beginnen, müssen Sie zunächst sicherstellen, dass NGINX auf Ihrem VPS oder Virtual Private Server installiert ist. Greifen Sie anschließend über SSH auf Ihren VPS zu. Bei Wpoven können Sie ganz einfach über die SSH-Befehlszeilenkonsole auf Ihre Site zugreifen.


Lesen Sie: Kann ich über SSH auf meine WPOven-Site zugreifen?


Konfigurationssetup von NGINX

  • Speicherort der NGINX-Konfigurationsdatei: Die Konfiguration für NGINX wird normalerweise in einer .conf-Datei gespeichert, bei der es sich um eine reine Textdatei handelt, die Anweisungen und Einstellungen für den Server enthält.
  • Standardspeicherort: Der Standardspeicherort für NGINX-Konfigurationsdateien befindet sich häufig im Dokumentstammverzeichnis Ihrer Site(s). In diesem Fall wird der Pfad erwähnt: /etc/nginx/sites-available/directory_name.conf .
  • Dokumentstammverzeichnis: In diesem Verzeichnis werden die Dateien Ihrer Website gespeichert. Der Dokumentenstamm kann variieren; Bei einem Single-Site-Server befindet es sich möglicherweise im Verzeichnis /html . Wenn Ihr Server mehrere Sites hostet, befindet sich das Dokumentstammverzeichnis möglicherweise in einem bestimmten Domänenverzeichnis wie /domain.com .
  • Benennung der Konfigurationsdatei: Der Name Ihrer .conf-Datei entspricht Ihrer Site. Wenn sich Ihre Site beispielsweise im Verzeichnis /html befindet, könnte die .conf-Datei den Namen html.conf haben. Wenn sie sich in einem Verzeichnis wie /domain.com befindet, könnte die .conf-Datei domain.com.conf heißen.
  • Standardkonfigurationsdatei: Im /etc/nginx/sites-available/directory gibt es normalerweise eine Standarddatei, die Sie als Vorlage verwenden können. Diese Datei enthält möglicherweise grundlegende Konfigurationen, die Sie kopieren oder entsprechend Ihren Anforderungen ändern können.
  • Erstellen einer neuen Konfigurationsdatei: Alternativ haben Sie die Möglichkeit, eine neue .conf-Datei zu erstellen. Sie könnten beispielsweise eine Datei mit dem Namen html.conf oder domain.com.conf basierend auf der Struktur und den Namenskonventionen Ihrer Site erstellen.

Sie werden vielleicht überrascht sein zu erfahren, dass in Nginx ein integriertes Tool namens „rewrite“-Direktive verfügbar ist. Es ist ein sehr praktisches Tool, das die Weiterleitung vereinfacht. Das Beste daran ist, dass Sie nichts Besonderes tun müssen. Es ist automatisch vorhanden, wenn Sie ein neues Nginx installieren.

Diese „rewrite“-Direktive ist nicht nur für grundlegende Umleitungen gedacht, sondern auch sehr vielseitig. Das heißt, Sie können zwei Arten von Weiterleitungen erstellen: permanente und temporäre.

Sie müssen lediglich zwei Argumente übergeben, die alte URL und die neue URL. Nachfolgend finden Sie einige Beispiele als Referenz. Geben Sie einfach die folgenden Zeilen in Ihre Serverkonfiguration ein.

Öffnen Sie zunächst die Konfigurationsdatei, indem Sie im Terminal den folgenden Befehl eingeben.

$ sudo vi /etc/nginx/nginx.conf

Verwenden Sie anschließend die folgenden Befehle gemäß Ihren Anforderungen.

1. Nginx-Umleitung von Seite zu Seite

Temporäre Seite-zu-Seite-Nginx-Umleitung

server {
# Temporary redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage redirect;
}

Permanente Seite-zu-Seite-Nginx-Weiterleitung

server {
# Permanent redirect to an individual page
rewrite ^/oldpage$ http://www.example.com/newpage permanent;
}

Anhand der oben genannten Befehle ist Ihnen aufgefallen, dass Sie, wenn Sie eine permanente Weiterleitung erstellen möchten, am Ende der Anweisung lediglich „redirect“ durch „permanent“ ersetzen müssen.

2. WWW-zu-Nicht-WWW-Nginx-Umleitung

Permanente WWW-Umleitung zur Nicht-WWW-Umleitung:

server {
# Permanent redirect to non-www
server_name www.example.com;
rewrite ^/(.*)$ http://example.com/$1 permanent;
}


Hinweis : Falls Sie von Nicht-WWW auf WWW umleiten möchten, müssen Sie lediglich die im obigen Befehl genannten Website-URLs ersetzen. Ersetzen Sie also www.example.com durch example.com und umgekehrt.


3. Wie leite ich die URL in Nginx von HTTP zu HTTPS um?

Vergessen Sie nicht, vor dieser Umleitung das SSL-Zertifikat zu installieren. Die Umleitung auf HTTPS hat seine Vorteile. Es hilft, Ihre Website vor allen MIMT-Angriffen, Datendiebstahl usw. zu schützen. Und sogar ihre Ports sind unterschiedlich, zum Beispiel verwendet HTTP 80 Port, während HTTPS 443 verwendet.

Um den gesamten vertraulichen Informationsaustausch zwischen Ihnen und Ihrem Besucher zu schützen, benötigen Sie die folgenden Befehle:

server {
listen 80;
server_name www.domain.tld;
return 301 https://www.domain.tld$request_uri;
}

4. Nginx-Umleitungs-URL zu einer anderen URL

Wenn Sie dauerhaft umleiten möchten, z. B. eine Nginx-Weiterleitung zu einer anderen URL 301, verwenden Sie den folgenden Befehl:

Zu einer neuen Domäne von einer älteren Domäne,

server {
listen 80;
listen 443 ssl;
server_name olddomain.com www.olddomain.com;
return 301 $scheme://www.newdomain.com$request_uri;
}

ODER

server {
# Permanent redirect to new URL
listen 443 ssl;
# Add this line to listen on the HTTPS port and enable SSL server_name olddomain.com;
ssl_certificate /path/to/your/ssl_certificate.crt; # Update with the actual path to your SSL certificate
ssl_certificate_key /path/to/your/ssl_certificate_key.key; # Update with the actual path to your SSL certificate key
# Additional SSL settings can be configured here
rewrite ^/(.*)$ https://newdomain.com/$1 permanent;
# Update to use 'https' protocol
}

  • Wir haben eine Umleitung für unsere Website mithilfe eines Tools namens „rewrite“-Direktive in Nginx eingerichtet.
  • ^/(.*)$ ist ein regulärer Ausdruck, der alles nach dem letzten Schrägstrich ( / ) in der URL verwendet.
  • Wenn beispielsweise jemand versucht, http://olddomain.com/index.html zuzugreifen, wird der Teil index.html verwendet.
  • Wenn Sie also zu http://olddomain.com/index.html gehen, werden Sie problemlos zu http://newdomain.com/index.html weitergeleitet.
  • Die Idee besteht darin, Benutzer nahtlos zu denselben Inhalten auf der neuen Domain umzuleiten.
  • Um sicherzustellen, dass diese Weiterleitung dauerhaft ist, haben wir nach der rewrite Anweisung ein spezielles Schlüsselwort hinzugefügt: „Permanent“.
  • Dies teilt sowohl Browsern als auch Suchmaschinen mit, dass es sich um eine dauerhafte Änderung handelt, indem ein sogenannter HTTP-301-Statuscode verwendet wird.

5. Nginx leitet zu einer anderen Domain weiter, ohne die URL zu ändern

Angenommen, Sie möchten die Domain olddomain.com auf newdomain.com umleiten, ohne die URL zu ändern. Das bedeutet, dass bei der Eingabe von olddomain.com eine Weiterleitung zu newdomain.com erfolgen sollte, die URL jedoch weiterhin olddomain.com anzeigen sollte.

Hier erfahren Sie, wie Sie vorgehen können:

server {
listen 80;
server_name olddomain.com;

location / {
proxy_pass http://newdomain.com;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect off;
}
}

6. Spezifische Site-Nginx-Umleitung

server {
listen 80;
server_name example.com;
return 301 http://newexample.com$request_uri;
}


Überprüfen Sie die Nginx-Syntax

Um zu überprüfen, ob die gesamte Nginx-Syntax korrekt ist, verwenden Sie den folgenden Befehl:

nginx -t

Wenn sich herausstellt, dass die Ausgabe leer ist, bedeutet dies, dass die Syntax korrekt ist und Sie den Nginx-Server neu starten müssen, damit diese Änderungen wirksam werden.


Starten Sie den Nginx-Server neu

Vergessen Sie nicht, Ihren Nginx-Server neu zu starten, damit diese Regeln wirksam werden, indem Sie den folgenden Befehl verwenden:

sudo systemctl restart Nginx


Zusammenfassung

Wie bereits oben erwähnt, erwies sich Nginx als der leistungsstärkste und benutzerfreundlichste Webserver, mit dem Sie problemlos dauerhafte und temporäre Nginx-Weiterleitungen erstellen können.

Nachdem Sie diesen Blog gelesen haben, wissen Sie jetzt, wie Sie Redirect-URLs mit NGINX erstellen. Ob eine Nginx-Umleitung von HTTP zu HTTPS, von einer Domäne zu einer anderen Domäne usw. erfolgen soll.

Außerdem haben Sie gelernt, wie sich Weiterleitungen auf Ihr SEO-Ranking auswirken. Stellen Sie daher immer sicher, dass Sie den richtigen Weiterleitungstyp verwenden.

Mit dieser hilfreichen Funktion können Sie die Struktur Ihrer Website ganz einfach an Trends und Anforderungen anpassen und müssen keine Angst vor Traffic- und SERP-Ranking-Verlusten haben.

WPOven bietet von WordPress verwaltete Hosting-Optionen für Ihr nächstes NGINX-Projekt. Kontaktieren Sie uns, um die besten Optionen für Sie zu besprechen.

Wenn Sie Fragen oder Vorschläge haben, teilen Sie uns dies bitte im Kommentarbereich unten mit:


Häufig gestellte Fragen

Wie leite ich eine URL in Nginx um?

In Nginx gibt es ein integriertes Tool namens „rewrite“-Direktive. Es ist ein sehr praktisches Tool, das die Weiterleitung vereinfacht. Das Beste daran ist, dass Sie nichts Besonderes tun müssen. Es ist automatisch vorhanden, wenn Sie ein neues Nginx installieren.

Was ist der Weiterleitungscode für Nginx?

Nginx ist sehr vielseitig und bietet Ihnen zwei Arten von Weiterleitungen: permanente Weiterleitungen mit dem Antwortcode 301 und vorübergehende Weiterleitungen mit dem Antwortcode 302.

Wofür wird NGINX verwendet?

Nginx ist ein vielseitiger und leistungsstarker Webserver und Reverse-Proxy-Server. Es wird häufig für die folgenden Zwecke verwendet: Webserver , Reverse-Proxy-Server , Load Balancer , SSL/TLS-Terminierung , Caching , Content Delivery Network (CDN) , API-Gateway , WebSocket-Unterstützung , Sicherheit und Hochverfügbarkeitsarchitektur