HTTP 451

{{Short description|HTTP status code}}

{{use dmy dates|date=October 2020}}

File:Status code 451 example.png website to a client in Pennsylvania, 30 July 2018.{{cite press release|url=https://www.attorneygeneral.gov/taking-action/press-releases/attorney-general-shapiro-governor-wolf-state-police-successfully-block-access-to-3d-downloadable-guns-in-pennsylvania/|title=Attorney General Shapiro, Governor Wolf, State Police Successfully Block Access to 3D Downloadable Guns in Pennsylvania|date=July 29, 2018|publisher=Pennsylvania Office of Attorney General}}|250x250px]]

{{HTTP}}

In computer networking, 451 Unavailable For Legal Reasons is an HTTP status code used 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.{{cite news|url=https://www.theguardian.com/books/2012/jun/22/ray-bradbury-internet-error-message-451|title=Call for Ray Bradbury to be honoured with internet error message|last=Flood|first=Alison|date=22 June 2012|newspaper=The Guardian|access-date=22 June 2012}} 451 provides more information than HTTP 403, which is often used for the same purpose.{{cite web|url=https://nakedsecurity.sophos.com/2013/08/19/http-error-code-451-unavailable-for-legal-reasons/|title=HTTP error code 451: "Unavailable For Legal Reasons"|last=Ducklin|first=Paul|date=19 August 2013|website=Naked Security|publisher=Sophos}} This status code is currently a proposed standard in {{IETF RFC|7725}}, which updated the IANA HTTP Status Codes Registry to include 451.{{cite web|url=https://www.iana.org/assignments/http-status-codes/http-status-codes.xhtml|title=Hypertext Transfer Protocol (HTTP) Status Code Registry|date=13 November 2024|access-date=3 February 2025|website=IANA|publisher=ICANN}}

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.

After introduction of the GDPR in the EEA it became common practice for websites located outside the EEA to serve HTTP 451 errors to EEA visitors instead of trying to comply with this new privacy law. For instance, many regional U.S. news sites no longer serve web browsers from the EU.{{cite news|author=Matt Burgess|title=The tyranny of GDPR popups and the websites failing to adapt|url=https://www.wired.co.uk/article/gdpr-cookies-eprivacy-regulation-popups|magazine=WIRED|date=2018-08-29|access-date=2018-10-01}}{{Cite web |url=https://www.niemanlab.org/2018/08/more-than-1000-u-s-news-sites-are-still-unavailable-in-europe-two-months-after-gdpr-took-effect/|title = More than 1,000 U.S. News sites are still unavailable in Europe, two months after GDPR took effect|website=www.niemanlab.org}}{{Cite web|url=https://www.engadget.com/2018-08-09-us-news-sites-unavailable-europe-gdpr.html|title=Major US news sites are still blocking Europeans due to GDPR|website=Engadget|accessdate=27 July 2023}}

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 (see injunction).{{cite ietf|rfc=7725|title=An HTTP Status Code to Report Legal Obstacles|date=February 2016|section=3|sectionname=451 Unavailable For Legal Reasons|first=Tim|last=Bray|author-link=Tim Bray}} Some sites have previously returned HTTP 404 (missing) or similar if they are not legally permitted to disclose that the resource has been removed. It 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.{{cite web|quote=If the request is for the blocked content then the proxy server will return a 404 error page to the customer|url=https://wiki.openrightsgroup.org/wiki/Cleanfeed|title=Cleanfeed|website=ORG Wiki|publisher=Open Rights Group}}{{cite web|quote=TCP Reset is sent back to the customer instead of content.|url=https://www.theguardian.com/technology/blog/2008/dec/08/internet-censorship-wikipedia-diagram|title=How the IWF blacklist stops you seeing the Scorpions' album cover|website=Technology blog, The Guardian|first=Charles|last=Arthur|date=8 December 2008}}

The status code was formally proposed in 2013 by Tim Bray, following earlier informal proposals by Chris Applegate{{cite web|url=http://www.qwghlm.co.uk/2008/12/09/there-is-no-http-code-for-censorship/|title=There is no HTTP code for censorship|first=Chris|last=Applegate|website=qwghlm.co.uk|date=9 December 2008|access-date=23 December 2015|archive-date=19 April 2021|archive-url=https://web.archive.org/web/20210419112431/http://www.qwghlm.co.uk/2008/12/09/there-is-no-http-code-for-censorship/|url-status=dead}} in 2008 and Terence Eden{{cite web|last=Byrne|first=Michael|date=21 December 2015|title=The HTTP 451 Error Code for Censorship Is Now an Internet Standard|url=https://www.vice.com/en/article/the-http-451-error-code-for-censorship-is-now-an-internet-standard/|access-date=2020-07-03|website=Vice}} in 2012. It was approved by the IETF on 18 December 2015.{{cite web|url=https://www.mnot.net/blog/2015/12/18/451|title=Why 451?|first=Mark|last=Nottingham|website=mnot’s blog|date=18 December 2015|access-date=20 December 2015}} It was published as in the Proposed Standard {{IETF RFC|7725}} in February 2016.

HTTP 451 was mentioned by the BBC's From Our Own Correspondent programme, as an indication of the effects of sanctions on Sudan and the inability to access Airbnb, the App Store, or other Western web services.{{Cite AV media|title=From Our Own Correspondent|type=radio|publisher=BBC Radio 4|author=Sally Hayden|date=28 September 2017 |author-link=Sally Hayden |url=http://www.bbc.co.uk/programmes/b095tcx0}}

Usage

File:HTTP 451 (Chromium).png

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 (an ISP, DNS provider, caching system, etc.), not the legal authority mandating the block.{{cite ietf|rfc=7725|title=An HTTP Status Code to Report Legal Obstacles|date=February 2016|section=4|sectionname=Identifying Blocking Entities|first=Tim|last=Bray|author-link=Tim Bray}} At an IETF hackathon, participants used a web crawler to discover that several implementations misunderstood this header and gave the legal authority instead.{{cite web|url=https://www.rfc-editor.org/errata/eid5181|title=RFC Errata Report|author=Stéphane Bortzmeyer|author-link=Stéphane Bortzmeyer|website=IETF Tools|date=11 November 2017|access-date=2018-12-03}}

= Additional uses =

The meaning of "a resource which cannot be served for legal reasons" has been interpreted to extend beyond government censorship:

  • When content cannot be shown in the user's country, due to contractual or licensing restrictions with the content owner, for example, a TV program may not be available to users in some countries.{{fact|date=February 2025}}
  • When a publisher refuses to serve content to a user, because the user's country adds regulatory requirements that the publisher refuses to comply with, e.g. websites based outside of the EU may refuse to serve users in the EU because they do not want to comply with the GDPR.{{fact|date=February 2025}}

Example

File:European HTTP 451.png.]]

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.

See also

References

{{Reflist}}