Skip to main content
0xd

HTTP_1_1_REQUIRED

Connection-levelRFC 9113 §7

HTTP_1_1_REQUIRED (0xd) is sent when an HTTP/2 server determines the client's request requires HTTP/1.1. The server cannot process the request over HTTP/2 and instructs the client to retry using HTTP/1.1. The client should reconnect on a new TLS connection without the h2 ALPN token.

Code

0xd

Decimal

13

Standard

RFC 9113 §7

Description

HTTP_1_1_REQUIRED is the graceful downgrade mechanism from HTTP/2 to HTTP/1.1. The server sends GOAWAY with HTTP_1_1_REQUIRED when a specific request cannot be handled over HTTP/2 – for example, an HTTP upgrade-based WebSocket request that requires HTTP/1.1 semantics, or a legacy backend that only understands HTTP/1.1. The client must close the HTTP/2 connection and reconnect using HTTP/1.1. The retry should not include h2 in the ALPN extension, or the server will again reject it.

Common Causes

  • WebSocket upgrade request requiring HTTP/1.1 semantics
  • Legacy backend proxy that cannot handle HTTP/2
  • Server-side feature requiring HTTP/1.1 semantics not available in HTTP/2