Nginx konfiguriert denselben Domänennamen, um sowohl den http- als auch den https-Zugriff zu unterstützen

Nginx konfiguriert denselben Domänennamen, um sowohl den http- als auch den https-Zugriff zu unterstützen

Nginx ist mit demselben Domänennamen konfiguriert, auf den sowohl über http als auch über https zugegriffen werden kann. Das Zertifikat wird kostenlos bei Alibaba Cloud beantragt.

Server
{
hören Sie 80;
hören Sie 443 SSL;
SSL aktiviert;
Servername Domänenname;
index index.html index.htm index.php standardmäßig.html standardmäßig.htm standardmäßig.php;
ssl_certificate /usr/local/nginx/cert/21402058063066221.pem; //Laden Sie nach der Anwendung das von Alibaba ssh bereitgestellte PEM herunter
ssl_certificate_key /usr/local/nginx/cert/21402058063066221.key; //Laden Sie den von Alibaba ssh bereitgestellten Schlüssel nach der Anwendung herunter
SSL-Sitzungszeitüberschreitung 5 Min.
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HOCH:!NULL:!aNULL:!MD5:!ADH:!RC4;
SSL-Protokolle TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers ein;

 
Stammverzeichnis /home/wwwroot/website;

include laravel.conf; //Okay, hier ist die Laravel-Konfiguration, die möglicherweise nicht für Sie geeignet ist, bitte ignorieren Sie sie #error_page 404 /404.html;
enable-php.conf einschließen;

Standort ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
läuft in 30 Tagen ab;
}

Standort ~ .*\.(js|css)?$
{
läuft nach 12 Stunden ab;
}

Zugriffsprotokoll /home/wwwlogs/airclass.mime.org.cn.log;
}

Der Schlüssel liegt im oben stehenden Listen 80;

443 SSL abhören; Port 80 öffnen

Natürlich hat es keinen Sinn, so zu spielen. Da es https ist, besteht keine Notwendigkeit, Daten über http zu übertragen. Wir müssen alle http-Anfragen an https weiterleiten.

Der Befehl „nginx redirect“ wird verwendet, um http auf https umzuleiten. Wie sollte also die Umleitung geschrieben werden? Ältere Versionen von Nginx haben möglicherweise ein Format ähnlich dem folgenden verwendet.
Das heißt, einen weiteren virtuellen Maschinenserver hinzuzufügen, Port 80

Server {
hören Sie 80;
Servername www.domain.com;
rewrite ^/(.*) https://$server_name$1 permanent; #Zu Https springen
}

Die Neufassung hat noch immer verschiedene Versionen, wie folgt

umschreiben ^/(.*)$ https://domain.com/$1 permanent;

oder

neu schreiben ^ https://domain.com$request_uri? permanent;

Jetzt hat die neue Version von Nginx die Schreibmethode geändert und die oben genannten werden nicht mehr empfohlen. Es gibt im Internet wahrscheinlich noch viele Artikel, die sich mit dem ersten Typ befassen.

Folgendes ist die neueste unterstützte Methode zum Umleiten von Nginx-HTTP-Seiten auf HTTPS-Seiten:

Server {
hören Sie 80;
Servername Domäne.com;
Rückgabewert 301 https://$server_name$request_uri;
}

Server {
hören Sie 443 SSL;
Servername Domäne.com;

}

Aber mein nginx/1.10.0 scheint nicht zu funktionieren, vielleicht unterstützt es diese Schreibweise nicht ...

Nachfolgend sehen Sie eine vollständige Konfiguration basierend auf http zu https:

Server
{
#hören 80;
hören Sie 443;
SSL aktiviert;
Servername domain.com; //Ihr Domänennameindex index.html index.htm index.php default.html default.htm default.php;
SSL-Zertifikat /usr/local/nginx/cert/user.medsci-tech.com/214020580630662.pem;
SSL-Zertifikatsschlüssel /usr/local/nginx/cert/user.medsci-tech.com/214020580630662.key;
SSL-Sitzungszeitüberschreitung 5 Min.
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HOCH:!NULL:!aNULL:!MD5:!ADH:!RC4;
SSL-Protokolle TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers ein;

root /home/wwwroot/web/public; //Stammverzeichnis des Projekts include laravel.conf;
#Fehlerseite 404 /404.html;
enable-php.conf einschließen;

Standort ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
läuft in 30 Tagen ab;
}

Standort ~ .*\.(js|css)?$
{
läuft nach 12 Stunden ab;
}

}
Server {
hören Sie 80;
Servername Domäne.com;
umschreiben ^/(.*) https://$server_name$request_uri? permanent;
}

Dies ist das Ende dieses Artikels über die Konfiguration von Nginx zur Unterstützung von HTTP- und HTTPS-Zugriff auf denselben Domänennamen. Weitere verwandte Inhalte zu Nginx, das sowohl HTTP- als auch HTTPS-Zugriff auf denselben Domänennamen unterstützt, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den verwandten Artikeln weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Beispiel für die Konfiguration von nginx zur Implementierung von SSL
  • Nginx implementiert ein Codebeispiel für die https-Websitekonfiguration
  • Detailliertes Tutorial zur Konfiguration von Nginx für https-verschlüsselten Zugriff
  • Implementierung der Nginx-Domänennamenweiterleitung für den HTTPS-Zugriff
  • Alibaba Cloud Nginx konfiguriert https, um ein Domänennamen-Zugriffsprojekt zu implementieren (grafisches Tutorial)
  • Detaillierte Erläuterung des Prinzips und des Implementierungsprozesses der Nginx-Konfiguration https
  • Detaillierte Konfiguration von Nginx, das sowohl Http als auch Https unterstützt
  • Implementierung von HTTP- und HTTPS-Diensten mit Nginx-Reverse-Proxy für mehrere Domänennamen
  • Beispielcode für die Verwendung von Nginx zur Implementierung einer 301-Weiterleitung zum https-Stammdomänennamen
  • So ändern Sie in Nginx die über http aufgerufene Website in https

<<:  Detaillierte Erläuterung der MySQL 8.0-Wörterbuchtabellenerweiterung

>>:  Schnellstart der Vue3-Dokumentation

Artikel empfehlen

Tic-Tac-Toe-Spiel in reinem CSS3 implementiert

Wirkung der Operation: html <div Klasse="...

Hyperlink-Tag für HTML-Webseiten

Lernprogramm zum Hyperlink-Tag einer HTML-Webseit...

MySQL-Implementierung des Funktionsbeispiels „lastInfdexOf“

Manchmal muss MySQL eine Funktion ähnlich zu last...

Installation von CUDA10.0 und Probleme in Ubuntu

Die Entsprechung zwischen der Tensorflow-Version ...

Beispielcode zur Implementierung des Div-Konkaveckenstils mit CSS

Bei der normalen Entwicklung verwenden wir normal...

Aggregatabfrage- und Union-Abfragevorgänge für MySQL-Datenbanken

Inhaltsverzeichnis 1. Einfügen der abgefragten Er...

Vollständige Schritte zum Bereitstellen von Confluence mit Docker

Confluence ist kostenpflichtig, kann aber für die...

Implementierung der Docker Compose-Mehrcontainerbereitstellung

Inhaltsverzeichnis 1. WordPress-Bereitstellung 1....

So zentrieren Sie Ihre HTML-Schaltfläche

Wie zentrieren Sie Ihre HTML-Schaltfläche selbst?...

9 Tipps zur MySQL-Datenbankoptimierung

Inhaltsverzeichnis 1. Wählen Sie die am besten ge...

Beispiel für eine einfache Operation einer MySQL-Abfrageanweisung

Dieser Artikel veranschaulicht anhand von Beispie...