HTTPREF
← Back to status codes

HTTP Status Code

421 Misdirected Request

Client Error

The request was directed at a server that is not able to produce a response for the given origin.

HTTP status code reference, response example, common causes, fixes, and related status codes.

What does HTTP 421 Misdirected Request mean?

HTTP 421 Misdirected Request is a status code sent by a server to indicate the result of an HTTP request.

Status codes help browsers, APIs, apps, and backend systems understand whether a request succeeded, failed, was redirected, or needs additional action.

In practice, HTTP 421 Misdirected Request usually appears when a server responds under specific request, validation, permission, or infrastructure conditions.

Response example

HTTP/1.1 421 Misdirected Request

HTTP example

HTTP/1.1 421 Misdirected Request

Common causes

  • HTTP/2 connection reuse targeting the wrong origin
  • Request routed to a server not configured for the requested host
  • Misconfigured load balancer or SNI mismatch

How to fix it

  • Open a new connection to the correct server
  • Check load balancer routing and SNI configuration
  • Verify virtual host configuration on the server

Common mistakes

  • Assuming the status code alone explains the full backend issue
  • Ignoring related response headers that add important context
  • Treating temporary errors as permanent failures
  • Retrying too aggressively without checking the cause
  • Debugging the frontend only when the problem is server-side

How browsers and APIs use it

Browsers, APIs, and backend services use HTTP status codes to understand the outcome of a request. Depending on the status code, an application may render content, retry a request, redirect the user, show an error, or trigger a different flow in the client or server.

Practical developer insight

421 is defined in RFC 9110 and is primarily seen in HTTP/2 connection reuse scenarios where a request is accidentally routed to the wrong server. Clients should retry the request on a fresh connection.

Client-side example

if (response.status === 421) {
  console.warn("Misdirected request — retrying on a new connection.");
  }

Related status codes