HTTP 451


In computer networking, HTTP 451 Unavailable For Legal Reasons is an error status code of the HTTP protocol to be displayed when the user requests a resource which cannot be served for legal reasons, such as a web page censored by a government. The number 451 is a reference to Ray Bradbury's 1953 dystopian novel Fahrenheit 451, in which books are outlawed. 451 intends to provide more information than 403 Forbidden, which is often used for the same purpose.
This status code is standardized in RFC 7725.
Examples of situations where an HTTP 451 error code could be displayed include web pages deemed a danger to national security, or web pages deemed to violate copyright, privacy, blasphemy laws, or any other law or court order.
The RFC is specific that a 451 response does not indicate whether the resource exists but requests for it have been blocked, if the resource has been removed for legal reasons and no longer exists, or even if the resource has never existed, but any discussion of its topic has been legally forbidden. Some sites have previously returned HTTP 404 or similar if they are not legally permitted to disclose that the resource has been removed. Such a tactic is used in the United Kingdom by some Internet service providers utilising the Internet Watch Foundation blacklist, returning a 404 message or another error message instead of showing a message indicating the site is blocked.
The status code was formally proposed in 2013 by Tim Bray, following earlier informal proposals by Chris Applegate in 2008 and Terence Eden in 2012. It was approved by the IESG on December 18, 2015. It was published as RFC 7725 in February 2016.
HTTP 451 was mentioned by the BBC's From Our Own Correspondent program, as an indication of the effects of sanctions on Sudan and the inability to access Airbnb, iOS's App Store, or other Western web services.
After introduction of the GDPR in European Economic Area many websites located outside EEA started to serve HTTP 451 instead of trying to comply with this new privacy law.

Usage

When an entity intercepts the request and returns status 451, it should include a "Link" HTTP header field whose value is a URI reference identifying itself. The "Link" header field must then have a "rel" parameter whose value is "blocked-by". This is intended to identify the entity implementing the blocking, not the legal authority mandating the block. At an IETF hackathon, participants used a web crawler to discover that several implementations misunderstood this header and gave the legal authority instead.

Example


HTTP/1.1 451 Unavailable For Legal Reasons
Link: ; rel="blocked-by"
Content-Type: text/html

Unavailable For Legal Reasons

Unavailable For Legal Reasons


This request may not be serviced in the Roman Province
of Judea due to the Lex Julia Majestatis, which disallows
access to resources hosted on servers deemed to be
operated by the People's Front of Judea.