HTTP 414 URI Too Long
HTTP 414 URI Too Long means the server is refusing to process the request because the request URI (the URL, including the query string) is longer than the server is willing to interpret. The URL contains too much data, typically because query parameters are being used to pass data that should be in the request body.
Quick reference
| Code | 414 |
|---|---|
| Name | URI Too Long |
| Category | 4xx Client Errors |
| Specification | RFC 9110 §15.5.15 |
| IANA status | Assigned |
| Cacheable | Yes — cacheable by default |
| Client action | Shorten the URL. Move data from the query string into the request body. |
| In-depth guide | HTTP 414 full guide → |
What HTTP 414 means
RFC 9110 defines 414 as indicating that the server is refusing to service the request because the request-target is longer than the server is willing to interpret. HTTP servers have configurable limits on URL length, typically measured in bytes. URLs that exceed this limit are rejected with 414.
The term "URI" in the status name refers to the full request target — the path plus query string. The host header and fragment identifier are not part of the request URI sent to the server. A URL like /search?q=<10000-character-string> may exceed server limits even though the scheme and host are not included.
URL length limits by server
URL length limits vary by server software and configuration: nginx defaults to 8KB for the request line; Apache defaults to 8KB with LimitRequestLine; IIS defaults to 16KB; Cloudflare limits URLs to 16KB; most browsers limit URLs to around 2048 characters for display, but can send longer URLs. The RFC does not specify a maximum URL length — server implementations define their own limits.
Common causes and fixes
Large data in query parameters
Passing large JSON blobs, arrays, or encoded objects in query parameters. Fix: move the data to a POST request body. Query parameters are for filtering and lookup identifiers, not for large data payloads.
Redirect loop appending parameters
A redirect loop that appends parameters to the URL on each iteration eventually produces a 414 when the URL grows beyond the limit. Check for misconfigured redirect rules that accumulate parameters.
Generated URLs with many filters
Search or filter interfaces that encode all selected filters in query parameters. With many filters selected, the URL grows large. Fix: use POST for search operations with complex filter sets, or implement a server-side saved-search pattern.
GET where POST is appropriate
Using GET for operations that modify state or send significant data. GET is for retrieval; POST is for operations that send data. If a request needs to send more than a few hundred bytes of data, it should be POST with a request body, not GET with query parameters.
FAQ
What does HTTP 414 URI Too Long mean?
HTTP 414 means the URL is longer than the server is configured to accept. Shorten the URL or move data from the query string into a request body.
What is the maximum URL length?
There is no universal standard. Server limits vary: nginx and Apache default to 8KB, Cloudflare allows 16KB. For safe cross-server compatibility, keep URLs under 2000 characters.
How do I fix a 414 error?
Move large data from query parameters to a POST request body. If you are building an API, avoid encoding complex data structures in the URL — use POST with a JSON body instead.
Does the browser limit URL length?
Yes, browsers have their own URL limits (Chrome allows up to about 32KB), but server limits are often hit before browser limits. A 414 usually comes from the server, not the browser.
Related resources
On this site: HTTP 414 URI Too Long — full guide · HTTP 413 Content Too Large · HTTP 431 Request Header Fields Too Large · All 4xx client errors
Standards: RFC 9110 §15.5.15 · IANA HTTP Status Code Registry · MDN Web Docs: 414