421 Misdirected Request

HTTP response status code 421 Misdirected Request is returned by the server to indicate the request was not intended for this server. The status code was originally defined in HTTP/2 and is now part of general HTTP semantics.

Usage

The 421 Misdirected Request error indicates the server is unable to produce a response. This status is sent as a result of connection reuse, where the server does not want clients to reuse connections. In response, a client tries to resubmit the request over a different connection.

This also occurs when an alternative service (Alt-Svc) is selected.

This status will not be generated by proxies.

SEO impact

Google recommends returning 421 to opt out of Googlebot crawling over HTTP/2. Googlebot supports both HTTP/1.1 and HTTP/2 and defaults to HTTP/1.1. Responding with 421 to HTTP/2 requests from Googlebot stops HTTP/2 crawling for the site. Pages returning 421 are not indexed, and previously indexed URLs returning this code are removed from search results.

Example

The client requests a resource and the server responds with 421 Misdirected Request because the request arrived on a connection not intended for this host.

Request

GET /tech-news HTTP/2
Host: www.example.re

Response

HTTP/2 421 Misdirected Request

How to fix

Retry the request on a new, dedicated connection to the intended origin. The browser or client opens a fresh TCP/TLS session rather than reusing an existing HTTP/2 multiplexed connection.

On the server side, verify the TLS certificate covers every hostname the server handles. A mismatch between the SNI (Server Name Indication) value and the Host header is the most common trigger.

When nginx reverse-proxies to an Apache backend over HTTPS, enable SNI forwarding so Apache sees the correct hostname:

  • proxy_ssl_server_name on;
  • proxy_ssl_name $host;
  • proxy_ssl_session_reuse off;

In Apache, confirm each virtual host has a matching ServerName and a valid certificate. Tightened SNI checks in recent Apache releases reject requests where the SNI hostname and the Host header conflict.

For CDNs and load balancers re-encrypting traffic to the origin, ensure the upstream TLS handshake sends the correct SNI value. Cloudflare and similar services need the origin certificate to list all served hostnames.

Disable HTTP/2 connection coalescing on the server when multiple domains share an IP but use different certificates. Each domain needs a separate connection.

Code references

.NET

HttpStatusCode.MisdirectedRequest

Rust

http::StatusCode::MISDIRECTED_REQUEST

Rails

:misdirected_request

Go

http.StatusMisdirectedRequest

Symfony

Response::HTTP_MISDIRECTED_REQUEST

Python3.5+

http.HTTPStatus.MISDIRECTED_REQUEST

Apache HttpComponents Core

org.apache.hc.core5.http.HttpStatus.SC_MISDIRECTED_REQUEST

Angular

@angular/common/http/HttpStatusCode.MisdirectedRequest

Takeaway

The 421 Misdirected Request status code is a client error sent by a server unable to produce a response. The client retries the request using another connection.

See also

Last updated: March 6, 2026