505 Server Error πŸ“‹

505 HTTP Version Not Supported: Protocol Mismatch

Last updated: June 28, 2026 β€’ 4 min read

✦ The Golden Answer: The 505 HTTP Version Not Supported status code indicates that the server does not support the HTTP protocol version used in the request. For example, a client sends a request using HTTP/2.0, but the server only supports HTTP/1.1. The server refuses to process the request and returns 505. This error is rare today because most modern servers support multiple versions, but it can occur with outdated servers or custom clients.

Common Causes of 505 Errors

CauseExampleHow to Fix
Client uses unsupported HTTP versionClient sends HTTP/2.0 to a server that only supports HTTP/1.1.Downgrade the client to HTTP/1.1, or upgrade the server to support HTTP/2.
Outdated server softwareAn old Apache or Nginx version that doesn't support HTTP/2.Update the server software to a version that supports the required protocol.
Custom client with incorrect version stringClient sends HTTP/3.0 but server only supports up to HTTP/1.1.Correct the client's version string to a supported version.
Misconfigured proxy or load balancerProxy strips or modifies the HTTP version in a way the server cannot understand.Check proxy configuration and ensure the version is passed correctly.
HTTP/2 without ALPNClient attempts HTTP/2 over TLS without proper ALPN negotiation.Ensure ALPN is correctly negotiated; fallback to HTTP/1.1 if needed.

Example: 505 Response

HTTP/1.1 505 HTTP Version Not Supported Content-Type: text/html <html> <body> <h1>505 HTTP Version Not Supported</h1> <p>The server does not support the HTTP version used in the request.</p> </body> </html>

How to Fix 505 Errors

  • If you're a client developer: Ensure your client sends a supported HTTP version (typically HTTP/1.1 or HTTP/2.0). Most libraries handle this automatically, but if you're using a custom client, check the version string in the request line.
  • If you're a server administrator: Upgrade your server software to support newer HTTP versions. For Apache, enable the http2 module. For Nginx, ensure the --with-http_v2_module is compiled in. If you cannot upgrade, configure the server to accept the version the client is using (if possible).
  • If you're an end‑user: This error is very rare. Try a different browser or update your current browser.

Supported HTTP Versions

  • HTTP/0.9 – obsolete, no longer used.
  • HTTP/1.0 – outdated, but some servers still support it.
  • HTTP/1.1 – widely supported; the most common version.
  • HTTP/2.0 – supported by most modern servers and browsers.
  • HTTP/3.0 – newer, based on QUIC; increasingly supported.

Frequently Asked Questions

Is 505 a client error or a server error?

It's a server error (5xx). The server is refusing to process the request because it doesn't support the protocol version, but the client's request is otherwise valid.

Can I use 505 for unsupported extensions?

No, 505 is specifically for HTTP version mismatches. For unsupported extensions or features, use 501 Not Implemented.

Why do I see 505 so rarely?

Because most modern servers support HTTP/1.1, HTTP/2, and often HTTP/3. Clients and servers negotiate versions via ALPN or fallback to HTTP/1.1 automatically, so 505 is rarely encountered.