Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So verwenden Sie Nginx zur Implementierung der HTTP/2-Protokollunterstützung

So verwenden Sie Nginx zur Implementierung der HTTP/2-Protokollunterstützung

WBOY
WBOYOriginal
2023-08-03 17:40:531487Durchsuche

So implementieren Sie die HTTP/2-Protokollunterstützung mit Nginx

Übersicht:
HTTP/2 ist eine neue Generation des HTTP-Protokolls und weist im Vergleich zum vorherigen HTTP/1.x-Protokoll eine erheblich verbesserte Leistung und Effizienz auf. Um das HTTP/2-Protokoll zu unterstützen, können wir Nginx als HTTP-Server verwenden und die entsprechenden Einstellungen konfigurieren.

Nginx installieren und konfigurieren:
Zuerst müssen wir Nginx installieren. Es kann über den folgenden Befehl im Ubuntu-System installiert werden:

sudo apt-get update
sudo apt-get install nginx

Nach Abschluss der Installation müssen wir Nginx für die Unterstützung des HTTP/2-Protokolls konfigurieren. Öffnen Sie die Konfigurationsdatei von Nginx, die Sie unter folgender Adresse finden:

sudo nano /etc/nginx/nginx.conf

Suchen Sie die Listen-Anweisung im Serverblock und fügen Sie http2 als Parameter hinzu, wie unten gezeigt: http2作为参数,如下所示:

server {
    listen 443 ssl http2;
    ...
}

注意,这里假设您的网站使用了SSL证书且使用默认的443端口。如果您的网站没有启用SSL或使用不同的端口,请相应地调整配置。

保存并关闭文件后,重新启动Nginx以使更改生效:

sudo systemctl restart nginx

配置SSL证书:
为了使用HTTP/2协议,我们需要配置SSL证书。在此示例中,我们将使用自签名证书。在生产环境中,应使用受信任的证书颁发机构签名的证书。

首先,创建一个用于存储SSL证书的目录:

sudo mkdir /etc/nginx/ssl

然后,生成私钥和证书请求:

sudo openssl req -new -newkey rsa:2048 -nodes -keyout /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.csr

按照提示进行相关信息的填写,例如国家码、组织名称等。

接下来,自签名证书:

sudo openssl x509 -req -days 365 -in /etc/nginx/ssl/nginx.csr -signkey /etc/nginx/ssl/nginx.key -out /etc/nginx/ssl/nginx.crt

配置Nginx以使用SSL证书。打开Nginx的配置文件,并找到以下行:

server {
    ...
    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    ...
}

取消注释listen

server {
    ...
    # SSL configuration
    #
    listen 443 ssl http2;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    ...
}

Hinweis: Dies setzt Ihre Website voraus Es wird ein SSL-Zertifikat und der Standardport 443 verwendet. Wenn Ihre Website kein SSL aktiviert hat oder einen anderen Port verwendet, passen Sie bitte die Konfiguration entsprechend an.

Nach dem Speichern und Schließen der Datei starten Sie Nginx neu, damit die Änderungen wirksam werden:

server {
    listen 443 ssl http2;
    server_name example.com;

    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;

    location / {
        root /var/www/html;
        index index.html;
    }
}

SSL-Zertifikat konfigurieren:

Um das HTTP/2-Protokoll verwenden zu können, müssen wir das SSL-Zertifikat konfigurieren. In diesem Beispiel verwenden wir ein selbstsigniertes Zertifikat. In einer Produktionsumgebung sollte ein von einer vertrauenswürdigen Zertifizierungsstelle signiertes Zertifikat verwendet werden.


Erstellen Sie zunächst ein Verzeichnis zum Speichern von SSL-Zertifikaten:

rrreee

Dann generieren Sie einen privaten Schlüssel und eine Zertifikatsanforderung:
rrreee

Befolgen Sie die Anweisungen, um die relevanten Informationen wie Ländercode, Organisationsname usw. einzugeben.

Als nächstes selbstsigniertes Zertifikat: 🎜rrreee🎜 Konfigurieren Sie Nginx für die Verwendung eines SSL-Zertifikats. Öffnen Sie die Nginx-Konfigurationsdatei und finden Sie die folgende Zeile: 🎜rrreee🎜Entkommentieren Sie die listen-Direktive und fügen Sie den Pfad zum SSL-Zertifikat und den Pfad zum privaten Schlüssel hinzu: 🎜rrreee🎜Nach dem Speichern und Schließen der Datei , starten Sie Nginx neu, damit die Änderungen wirksam werden. 🎜🎜HTTP/2-Protokollunterstützung testen: 🎜Um zu überprüfen, ob das HTTP/2-Protokoll erfolgreich aktiviert wurde, öffnen Sie Ihren Browser und besuchen Sie Ihre Website. Sehen Sie sich in den Entwicklertools des Browsers die Registerkarte „Netzwerk“ an und Sie können sehen, dass das angeforderte Protokoll HTTP/2 ist. 🎜🎜Codebeispiel: 🎜Das Folgende ist ein einfaches Nginx-Konfigurationsbeispiel, das Unterstützung für das HTTP/2-Protokoll enthält: 🎜rrreee🎜Fazit: 🎜Durch die Verwendung der Nginx-Konfiguration zur Unterstützung des HTTP/2-Protokolls können wir die Leistung und Effizienz von verbessern die Website. Indem Sie die Schritte in diesem Artikel befolgen, können Sie die Unterstützung für das HTTP/2-Protokoll problemlos auf Ihrer Website implementieren. 🎜🎜Das Obige ist eine Einführung und ein Beispielcode zur Verwendung von Nginx zur Implementierung der HTTP/2-Protokollunterstützung. Ich hoffe, es wird Ihnen hilfreich sein! 🎜

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Nginx zur Implementierung der HTTP/2-Protokollunterstützung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn