nginx http2 protocol error

von Thomas


Erstellt am 03.03.2018


nginx http2 error

Manchmal kann es, obwohl ihr durch

nginx -t

keine Fehlermeldung bekommt vorkommen, dass es trotzdem zu Fehlern kommt. Ich möchte euch zeigen, wie ihr durch

curl

einige Informationen bekommt und somit eventuell debuggen könnt. Bei mir gab es vor kurzem z.b. folgenden Fehler:

curl: (92) HTTP/2 stream 1 was not closed cleanly: PROTOCOL_ERROR (err 1)

Leider kann man mit dieser Information nicht wirklich viel anfangen. Die Folge des Fehlers war, dass beim Aufrufen der Domain eine leere weiße Seite zu sehen war. Nun musste ich genauer herausfinden, wo welches Programm einen Fehler erzeugt, dazu benutzte ich folgenden Komando:

curl -vso /dev/null --http2 https://example.com

-v , diese Option lässt curl mehr Informationen ausgeben
-s , versetzt curl in einen Siltenmode, welcher mir nur die Informationen ausgibt, den ich spezifiziere
-o , lässt die Ausgabe in eine Datei schreiben, was wir aber nicht benötigen, sodass wir die Ausgabe direkt ins Datengrab schicken
--http2 , spezifiziert welche Informationen wir bekommen wollen.



Beim Analysieren der Ausgabe wurde dann schnell klar, dass ein HTTP Header falsch gesetzt war. Dieser wurde in der nginx Konfiguration behoben und meine Seite funktionierte wieder.