HTTP/2 ist die zweite Hauptversion des HTTP-Protokolls, die 2015 veröffentlicht wurde.
Um 46.5% der Websites unterstützen HTTP/2.
Es hat viele Funktionen wie:
- HTTP-Header-Komprimierung
- Push-Technologien
- Laden Sie Seitenelemente parallel über eine einzelne TCP-Verbindung
- Binäres Protokoll
- Reduzierte Latenz
Demo von AKAMAI zeigt, dass HTTP / 2 ungefähr ist zweimal schneller als HTTP/1.1.
Wusstest du schon LiteSpeed war einer der ersten Webserver, der HTTP / 2 unterstützte?
Wenn Sie ein CDN wie Cloudflare, Incapsula, MaxCDN verwenden, müssen Sie HTTP/2 möglicherweise nicht auf Ihren Webservern aktivieren, da Sie dies vom CDN-Netzwerkrand aus tun können.
Wenn Sie jedoch HTTP/2 in Ihren Webservern wie Apache, Nginx, IIS implementieren müssen, lesen Sie weiter, um zu erfahren, wie Sie dies tun können.
Hinweis: Alle führenden Browser (Chrome, Edge, Firefox, Safari, Opera) müssen TLS 1.2 oder höher für die HTTP2-Implementierung verwenden.
Aber machen Sie sich keine Sorgen, wenn Sie einige Experimente durchführen. Du kannst Holen Sie sich das TLS-Zertifikat KOSTENLOS.
Implement HTTP/2 in Apache HTTP
HTTP / 2 kann in Apache HTTP bereitgestellt werden 2.4.17 oder spätere Version mit Hilfe von mod_http2 Modul. Wenn Sie also eine Version 2.2 oder niedriger haben, müssen Sie zuerst auf die kompatible Version aktualisieren.
Lassen Sie uns Apache HTTP mit dem kompilieren mod_http2, mod_ssl Modul.
- Laden Sie die neueste Version herunter (ich mache 2.4.25 unter Linux)
- Extrahieren Sie die heruntergeladene Datei, wenn Sie die .gz-Datei heruntergeladen haben, dann
gunzip -c httpd-2.4.25.tar.gz | tar xvf -
- Sie sehen, dass ein neuer Ordner erstellt wird. Geh hinein
- Erstellen Sie den Apache aus der Quelle mit dem Befehl configure
Hinweis: Wenn Sie dies auf einem brandneuen Server versuchen, tritt möglicherweise ein Fehler beim Installieren von Abhängigkeiten auf, und dieser Leitfaden sollte dir dabei helfen.
./configure --enable-ssl --enable-so --enable-http2
- Stellen Sie sicher, dass kein Fehler vom obigen Befehl vorliegt, und führen Sie den folgenden Befehl make aus
make make installieren
Damit ist Apache HTTP mit dem HTTP / 2-Modul installiert und es ist Zeit, die erforderliche Konfiguration vorzunehmen.
- Erstellen Sie eine Sicherungskopie der Datei httpd.conf (Standardspeicherort /etc/httpd/conf/httpd.conf).
- Öffnen Sie die Datei httpd.conf mit vi und stellen Sie sicher, dass Folgendes vorhanden ist; wenn nicht, dann füge es hinzu.
LoadModule http2_module modules / mod_http2.so
- Als nächstes müssen Sie die hinzufügen Protokolle Richtlinie wie unten
Protokolle h2 h2c http / 1.1
Wenn Sie HTTP/2 für einen einzelnen virtuellen Host aktivieren, müssen Sie Folgendes hinzufügen: Protokolle unter dem jeweiligen VIrtualHost.
Hinweis: Oben gibt es drei Parameter Protokolle Richtlinien
- h2 - Apache anweisen, das HTTP / 2-Protokoll über SSL / TLS zu unterstützen
- h2c - weist Apache an, HTTP / 2 über TCP zu unterstützen
- http / 1.1 - Wenn ein Client HTTP / 2 nicht akzeptiert, wird die Anforderung über HTTP / 1.1 bereitgestellt
Starten Sie den Apache HTTP-Server neu auf neu laden die Konfiguration.
Jetzt ist die Apache HTTP-Instanz freigegeben zur Unterstützung des HTTP / 2-Protokolls.
Implement HTTP/2 in Nginx
Nginx 1.9.5 oder eine höhere Version unterstützt HTTP/2, daher müssen Sie zuerst sicherstellen, dass Sie die kompatible Version installiert haben.
Das Aktivieren von HTTP/2 in Nginx ist nur eine Frage des Hinzufügens der http2 Parameter in der Listen-Direktive.
- Erstellen Sie wie gewohnt eine Sicherungskopie der Datei nginx.conf (Standardspeicherort /etc/nginx/nginx.conf).
- Ändern Sie mit vi und fügen Sie hinzu http2 für hören Richtlinien
server {listen 443 http2 ssl chandan.io; … ....}
Wie oben erwähnt, wird HTTP / 2 unterstützt nur über HTTPSSie müssen also unter Serverblock mit SSL-Konfiguration hinzufügen.
Wenn sich Ihre SSL-Konfiguration in einer anderen Datei als nginx.conf befindet, müssen Sie sie dort aktualisieren.
Starten Sie anschließend Nginx neu, damit die Konfiguration aktiv ist.
Verify if Website Supports HTTP/2
Es gibt mehrere Möglichkeiten, um zu überprüfen, ob die Website HTTP / 2 unterstützt oder nicht.
Von Hand – Öffnen Sie IE/Chrome/Firefox und drücken Sie F12 >> gehen Sie zur Registerkarte Netzwerk, und Sie sollten Protokoll als HTTP/2 sehen.
Online - du kannst den ... benutzen HTTP / 2-Testtool.
Das ist alles für heute. Ich hoffe, oben hilft Ihnen, das HTTP/2-Protokoll in Apache- und Nginx-Webservern für zu aktivieren schnell ladende Webseiten.