Heim >Betrieb und Instandhaltung >Nginx >Wie Nginx HTTP zu HTTPS umleitet

Wie Nginx HTTP zu HTTPS umleitet

WBOY
WBOYnach vorne
2023-05-13 09:52:133329Durchsuche

Nginx ist ein leistungsstarkes Umleitungstool, das einfach konfiguriert werden kann, um ungesicherten oder unverschlüsselten HTTP-Webverkehr an verschlüsselte und sichere HTTPS-Webserver auf Ihrem System umzuleiten.

Nginx, ausgesprochen „Engine x“, ist ein kostenloser, quelloffener, Linux-basierter Hochleistungs-Web- und Reverse-Proxy-Server, der für die Verwaltung und Bewältigung der Last des größten Website-Verkehrs im Internet verantwortlich ist. Nginx ist ein leistungsstarkes Umleitungstool, das einfach konfiguriert werden kann, um unsicheren oder unverschlüsselten HTTP-Webverkehr an verschlüsselte und sichere HTTPS-Webserver auf Ihrem System umzuleiten. Wenn Sie Systemadministrator oder Entwickler sind, sollten Sie den Nginx-Server häufig verwenden.

In diesem Beitrag schauen wir uns an, wie man den Webverkehr von HTTP auf sicheres HTTPS in Nginx umleitet. HTTP-Nachrichtenheader werden im Klartext-String-Format übertragen, während HTTPS SSL/TLS verwendet, um die Kommunikation zwischen den Client- und Serversystemen zu verschlüsseln. Daher sollte HTTPS aus vielen Gründen HTTP ersetzen:

1 Alle Daten in beide Richtungen zwischen Client und Server sind verschlüsselt. Wenn sie jedoch abgefangen werden, kann niemand auf sensible Informationen zugreifen.

2. Wenn Sie HTTPS verwenden, betrachten Google Chrome und andere Browser Ihre Website-Domain als sicher.

3. Die HTTPS-Version verbessert die Leistung Ihrer angegebenen Website mithilfe des HTTP/2-Protokolls.

4. Wenn Sie Ihre Website-Domain über HTTPS bereitstellen, wird die Website bei Google höher gerankt, da alle HTTPS-geschützten Websites bevorzugt werden.

5. Es ist besser, den Datenverkehr in Nginx HTTP auf HTTPS in einem separaten Serverblock für jede Site-Version umzuleiten. Es wird außerdem empfohlen, die Umleitung des Datenverkehrs in die „if“-Richtung zu vermeiden, da dies zu fehlerhaftem Serververhalten führen kann.

Leiten Sie den gesamten Datenverkehr von HTTP auf HTTPS um 80 default_server – Dies weist Ihr System an, den gesamten HTTP-Verkehr auf Port 80 zu erfassen $request_uri – Dies weist Ihre Suchmaschinen an, es dauerhaft umzuleiten. Es gibt die Variable $host an, die den Domänennamen enthalten soll.

Nach dem Ändern der Konfigurationseinstellungen muss der Nginx-Dienst neu auf das System geladen werden. Laden Sie also den Nginx-Dienst mit dem folgenden Befehl neu:

server { 
    listen 80 default_server; 
    server_name _; 
    return 301 https://$host$request_uri; 
}
    HTTP zu HTTPS für eine bestimmte Domäne in Nginx umleiten
  1. Nach der Installation des SSL-Zertifikats in Ihrer Domäne stehen Ihnen zwei Server für diese Domäne zur Verfügung. Blockoptionen. Ein Block ist für die HTTP-Version vorgesehen, die auf Port 80 lauscht, und die zweite Version ist für die HTTPS-Abhörung auf Port 443 vorgesehen. Um jedoch eine Website-Domain von HTTP auf HTTPS umzuleiten, müssen Sie die Nginx-Konfiguration öffnen. Sie finden diese Konfigurationsdatei im Verzeichnis /etc/nginx/sites-available. Wenn Sie diese Datei nicht finden, können Sie nach /etc/nginx/nginx./usr/local/nginx/conf oder /usr/local/etc/nginx suchen und die folgenden Änderungen in dieser Datei vornehmen:
  2. $ sudo systemctl reload nginx

    Gehen wir den obigen Code Zeile für Zeile durch.

  3. Listen 80 – Über Port 80 lauscht der Server auf alle eingehenden Verbindungen für den angegebenen Domänennamen.


  4. Servername linuxmi.com www.linuxmi.com – Gibt den Domänennamen an. Ersetzen Sie es also durch den Domainnamen der Website, die Sie umleiten möchten.

Return 301 https://linuxmi.com$request_uri – Verschieben Sie den Datenverkehr auf die HTTPS-Version der Website.

    Die Variable $request_uri ist für den vollständigen ursprünglichen Anforderungs-URI, der auch Parameter enthält.
  1. Mit der folgenden Methode können Sie den Datenverkehr von der HTTPS-WWW-Version zur Nicht-WWW-Version Ihrer Website umleiten. Für Nicht-WWW- und WWW-Versionen wird empfohlen, Weiterleitungen in separaten Serverblöcken zu erstellen. Lassen Sie es uns anhand eines Beispiels erklären. Wenn Sie WWW-HTTPS-Anfragen auf eine Nicht-WWW-Version umleiten möchten, sollten Sie die folgende Konfiguration befolgen:

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

    Ersetzen Sie den Domänennamen durch Ihren Domänennamen, zum Beispiel www.linuxmi.com.
  2. Durch Ändern der Einstellungen der Nginx-Konfigurationsdatei können Sie ganz einfach eine bestimmte Domäne oder alle auf HTTPS umleiten. Der in diesem Artikel erwähnte Ansatz kann Ihre Website sicherer machen, indem er das Benutzererlebnis verändert.

Das obige ist der detaillierte Inhalt vonWie Nginx HTTP zu HTTPS umleitet. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen