Die HTTP-Version wird nicht unterstützt.
Wann du ihn verwendest
Selten; sehr alte oder sehr neue Protokollversionen.
Häufige Ursachen und Lösungen
In der Praxis sehr selten: Der Server lehnt die HTTP-Version in der Request-Zeile ab. Ursachen sind etwa eine von Hand geschriebene Anfrage mit einem Tippfehler wie HTTP/1.2, ein Client, der HTTP/2 mit einem Server spricht, der nur HTTP/1.x versteht, oder umgekehrt. AWS ALB dokumentiert 505 genau für diese Unstimmigkeit, etwa wenn eine HTTP/2-Anfrage auf einer Verbindung ankommt, die der ALB als HTTP/1 aufgebaut hat.
Erzwinge zum Debuggen eine Version mit curl --http1.1 oder curl --http2 und schau, welche der Server akzeptiert, und prüfe die ALPN-Aushandlung mit openssl s_client -alpn h2 -connect host:443. Browser handeln HTTP/2 und HTTP/3 über ALPN und Alt-Svc aus, daher lösen sie 505 praktisch nie selbst aus. Die Antwort sollte auflisten, welche Versionen der Server unterstützt.
Server-Fehler (5xx)
5xx-Codes sind Server-Fehler: Die Anfrage kann in Ordnung sein, aber der Server oder etwas dahinter ist ausgefallen. Für diese Codes lohnt sich eine Alarmierung.
So sieht es aus
HTTP/1.1 505 HTTP Version Not SupportedSo sendest du ihn
| Node.js / Express | res.status(505).end() |
|---|---|
| Python / Flask | return '', 505 |
| nginx | return 505; |
So prüfst du ihn
curl -s -o /dev/null -w "%{http_code}\n" https://example.com/