2016-07-14 14 views
3

Ich habe eine Website, die auf einem Nginx 1.10.0 auf Ubuntu 16.04 Server (OpenSSL 1.0.2h) läuft. Ich mag diese Seite über HTTP dienen/2, so dass ich konfigurierte Nginx entsprechend:Warum funktioniert HTTP/2 auf einer bestimmten Site in FF, funktioniert aber nicht in Chrome, IE und Edge auf demselben Windows 10-Computer?

listen 443 ssl http2 default_server; 
listen [::]:443 ssl http2 default_server 

Und es funktioniert gut in FF 47 und Chrome 51 auf meinem Büro Ubuntu 15.10 Desktop und in dem gleichen Browser auf meinem Heim-Ubuntu 15.10 Desktop.

Allerdings funktioniert auf meinem Windows 10 Desktop und Laptop HTTP/2 nur in FF. Chrome 51, IE 11 und Edge verwenden HTTP/1.1 auf dieser Website.

Also bin ich verwirrt. This service sagt, dass meine Website HTTP/2 und ALPN unterstützt (was für HTTP/2 erforderlich ist, um in Chrome since version 51 zu arbeiten).

Chrome-Versionen und Funktionen sind genau die gleichen:

Chrome Network Info

HTTPS arbeitet, und Security Panel in Chrome Dev-Tools zeigt, dass alles gesichert ist.

This demo in Chrome, IE und Edge-zeigt die Meldung "Dieser Browser nicht/2 HTTP aktiviert." und "Ihr Browser unterstützt HTTP/2!" in FF. Aber HTTP/2 auf medium.com funktioniert gut in all diesen Browsern.

Also, meine Frage ist: was ist los und wie das zu beheben?

+0

Mit den gleichen Problemen, Chrome arbeitete auf H2 vor ein paar Wochen, scheint einige Build/Update könnte es gebrochen haben? –

+0

@ josef.van.niekerk aber warum medium.com funktioniert in Chrome und Edge und IE und meine Seite nicht? Aber funktioniert in FF und Chrome auf Ubuntu ... Es verwirrt mich - einige Mischung aus Server, Browser und Betriebssystem Probleme. –

Antwort

4

Verwenden Sie eine Antivirensoftware (z. B. Avast) und prüft sie Ihren HTTPS-Datenverkehr?

Es tut dies, indem es sich wie ein MITM verhält, also verbinden Sie es und es verbindet sich mit der realen Website. Und wenn sie nur http/1 unterstützen (was ich, soweit ich weiß, nur tun), würde das erklären. Obwohl seltsamerweise nicht für Medium, es sei denn, Sie haben eine Ausnahme dafür.

Sollte leicht zu überprüfen sein, indem Sie das HTTPS-Zertifikat beim Besuch der Website überprüfen, um festzustellen, ob es von Ihrem lokalen Avast-Server "ausgestellt" wurde.

Wenn nicht, dann schlagen Sie vor, dass Sie Ihre Chiffren betrachten, da HTTP/2 wählerisch ist, welche es verwendet. Irgendwas Merkwürdiges, das auf https://www.ssllabs.com/servertest für Ihre Site zeigt? Welche Chiffre verwendet es für Chrome?

+0

Ja, es ist in der Tat meine NOD32 Antivirus mit meinem Verkehr zu stören: Chrome zeigt ESET-Zertifikat für meine Website, aber original für medium.com. Ich habe keine Ausnahmen eingerichtet, es sind alles Standardeinstellungen, da ich nie über diese Funktion nachgedacht habe. Ich werde meinen Antivirus-Support kontaktieren, um dieses Verhalten zu klären. Danke für Ihre Antwort, es war sehr hilfreich. –

+0

Nr. Es bringt ein paar Leute heraus und es gibt ein paar Fragen hierüber, mit denen ich verbunden gewesen wäre, aber das Mittelding hat mich (und tut es immer noch) geworfen, also war ich nicht 100% überzeugt, dass es das war. –