Status Codes Have Stories to Tell
Every time you open a page in your web browser, the server responds with a 3-digit number. 200 (success), 301 (permanent redirect), 404 (not found), 500 (server error) - these HTTP status codes are the language of "conversations" happening behind the scenes of the web.
But behind these seemingly impersonal numbers lie Internet history, engineering humor, and social messages. This article introduces the backstories of status codes that make the web world a little more interesting.
404 Not Found - The Internet's Most Famous Error
404 is probably the most widely known status code in the world. Meaning "page not found," every web user has encountered this code at least once.
The 404 Urban Legend
A widely circulated urban legend claims that "the number 404 comes from Room 404 at CERN (the European Organization for Nuclear Research)." The story goes that Tim Berners-Lee, inventor of the World Wide Web, had his office in Room 404, and when requests couldn't reach the server there, a "404" error was returned.
However, this is not true. The HTTP status code numbering system was designed based on functional classification. 4xx indicates "client errors," and 404 was assigned as one of the sequential codes in the 400 range. It's not even certain whether Room 404 existed at CERN. For a deeper exploration of why this particular error became so iconic, see our article on why 404 means "page not found".
Creative Uses of 404 Pages
Many websites use their 404 pages as opportunities for branding or humor. GitHub's 404 page features a Star Wars parody, and Pixar's 404 page shows the Sadness character from "Inside Out."
418 I'm a Teapot - An RFC April Fools' Joke
The most peculiar HTTP status code is 418 "I'm a teapot."
This code was defined in RFC 2324 "Hyper Text Coffee Pot Control Protocol (HTCPCP)," published on April Fools' Day 1998. HTCPCP is a joke specification for a protocol to control coffee pots over the Internet. 418 means "I was asked to brew coffee, but I'm a teapot, so I can't brew coffee."
When a Joke Became Standard
RFC 2324 was clearly written as a joke, but 418 was embraced by the developer community and implemented in many web frameworks and servers. Node.js, Go, Python's Flask, and other major frameworks support 418.
In 2017, when IETF's Mark Nottingham proposed "removing 418 from official status codes and freeing the number for future use," fierce opposition erupted from the developer community. A campaign site called "save418.com" was launched, and ultimately the number 418 was kept as a reserved code, never to be reassigned to another use. A rare case where a technical joke was protected as the community's cultural heritage.
451 Unavailable For Legal Reasons - An Homage to Fahrenheit 451
451 is a status code officially defined in RFC 7725 in 2016, indicating that "content cannot be provided for legal reasons." It's used when access to specific content is blocked due to government censorship, court orders, or copyright infringement claims.
Origin of the Number
The number 451 comes from Ray Bradbury's science fiction novel "Fahrenheit 451" (1953). The novel depicts a future society where book ownership and reading are forbidden, and 451 refers to the temperature at which paper spontaneously ignites (451 degrees Fahrenheit, approximately 233 degrees Celsius).
When Tim Bray (a Google engineer) proposed this status code in 2012, he intentionally borrowed the number from Bradbury's novel. It expresses the censorship-driven burning of content in the world of HTTP.
Real-World Usage
- UK ISPs return 451 when blocking piracy sites based on court orders
- GitHub uses 451 when making repositories private based on DMCA takedown notices
- Censorship systems in Russia and China blocking specific content (though in practice, connection resets or timeouts are more commonly used than 451)
Other Interesting Status Codes
301 vs 302 - The Confusion That Changed Web History
301 (Moved Permanently) and 302 (Found) both indicate redirects, but their history is full of confusion. The HTTP/1.0 specification stated that 302 was a "temporary redirect" and that requests to the redirect target should maintain the original method (such as POST). However, nearly all browsers converted 302 responses to GET.
To resolve this confusion, HTTP/1.1 added 303 (See Other, always converts to GET) and 307 (Temporary Redirect, maintains method). Later, 308 (Permanent Redirect, the method-preserving version of 301) was also added.
204 No Content - Success with Nothing to Return
204 indicates "the request succeeded, but there's no content to return." It's used when server-side processing is complete but no response body is needed, such as clicking a "like" button or saving settings. A frequently encountered code in web API design.
429 Too Many Requests - The Rate Limit Guardian
429 is returned when a client sends too many requests in a short period. You'll see this code when hitting an API's rate limit. Rate limiting is a core concept in API security, protecting services from abuse and denial-of-service attacks. Web services like IP Check-san also implement rate limiting to prevent mass bot access, returning 429 when limits are exceeded.
503 Service Unavailable - "Currently Experiencing Heavy Traffic"
503 indicates the server temporarily cannot process requests. Causes include maintenance, overload, or backend service failures. A code frequently seen right after major sales launch or popular ticket releases.
103 Early Hints - An Experimental Code Born in 2017
103 was defined in RFC 8297 in 2017 as a code that sends hints to the browser to start loading resources while the server prepares the final response. Chrome added support in 2022, and CDNs such as Cloudflare offer it to improve page load speed.
The Design Philosophy of Status Codes
The 3-digit numbers of HTTP status codes follow a systematic design philosophy.
- 1xx (Informational): Request received, processing continues
- 2xx (Success): Request was processed successfully
- 3xx (Redirection): Additional action needed to complete the request
- 4xx (Client Error): Problem with the request (client's responsibility)
- 5xx (Server Error): Server-side problem preventing request processing
This classification was designed in the early 1990s by Tim Berners-Lee, Roy Fielding, and others. A simple yet powerful design where just the first digit tells you the general nature of the response. Note that these codes are only as trustworthy as the connection carrying them - without HTTPS/TLS encryption, the entire response, status code included, can be intercepted or tampered with by third parties.
Summary - Human Stories Behind the Numbers
HTTP status codes are more than just technical specifications. The 404 urban legend, the 418 teapot, the 451 homage to book burning - behind these numbers lie the humor, literary sophistication, and belief in freedom of the engineers who built the Internet.
Next time you encounter an error page in your web browser, pay attention to the status code number. If you know the story those 3 digits tell, even errors become a little more enjoyable.
Related Glossary Terms
Frequently Asked Questions
Is it true that 404 comes from a room number at CERN?
This is a popular urban legend but has no confirmed basis. The story claims that the World Wide Web's original server was in room 404 at CERN, but HTTP status codes follow a systematic numbering scheme where 4xx indicates client errors, and 04 was simply the fourth error in that category.
What is the origin of 451 Unavailable For Legal Reasons?
The number 451 is a direct reference to Ray Bradbury's novel Fahrenheit 451, in which books are burned at 451 degrees Fahrenheit. The status code was proposed by Tim Bray and standardized in RFC 7725 to indicate content blocked for legal reasons such as censorship or court orders.
What rules govern the three-digit HTTP status code numbers?
The first digit indicates the response category: 1xx for informational, 2xx for success, 3xx for redirection, 4xx for client errors, and 5xx for server errors. The remaining two digits identify the specific condition within each category.