HTTPfy

421 Misdirected Request

The request was sent to a server that cannot produce a response for that host and scheme.

421 at a glance

Code
421
Name
Misdirected Request
Class
4xx Client error
Status
IANA-registered standard code
Defined in
RFC 9110, Section 15.5.20
Cacheable by default
No by default. Caches store it only when the response carries explicit freshness (Cache-Control max-age, s-maxage or Expires).

What 421 means

421 Misdirected Request means the connection reached a server not configured for the request's authority. It mostly happens with HTTP/2 connection coalescing: the browser reuses one TLS connection for several hostnames covered by the same certificate, but the server behind it does not serve all of them. Clients may retry the request on a new connection.

What typically causes a 421

  • HTTP/2 connection reuse across hostnames sharing a wildcard or multi-SAN certificate but served by different backends.
  • Apache httpd enforcing that the SNI name matches the Host header; httpd 2.4.64 (2025) tightened this, and reverse proxies that do not send SNI to the backend started getting 421.
  • CDN or load balancer misrouting a host to the wrong origin pool.

Fix it on the server

  • Behind nginx proxying to Apache over TLS, enable proxy_ssl_server_name on; (and proxy_ssl_name if needed) so SNI matches Host.
  • Avoid sharing one certificate across hosts that terminate on different servers, or make every server answer for all names on the certificate.

Fix it as a client or visitor

  • Retrying on a fresh connection usually works; browsers do this automatically.

Example response

HTTP/2 421
content-type: text/html

<h1>Misdirected Request</h1>

Opens the HTTP headers tool with your URL filled in; it shows the status line and headers of every redirect hop.