httpstatuses/contents/codes/451.md
Samuel Ryan d8a693bf27 Remove markdown line limit (#52)
* Removes line length limit from Status Code Markdown

This will make the data easier to use when we develop the API, it needs
to be consistent, arbitrary new lines (especially in text format) will
be a major issue, so some sort of workaround would have to be
implemented, easier to simply fix the source files.

* Removes line length limit from misc. Markdown files
2016-04-23 01:12:07 +01:00

1.8 KiB

set code title proposal references
4 451 Unavailable For Legal Reasons true
Symfony HTTP Status Constant
Response::HTTP_UNAVAILABLE_FOR_LEGAL_REASONS

The server is denying access to the resource as a consequence of a legal demand.

The server in question might not be an origin server. This type of legal demand typically most directly affects the operations of ISPs and search engines.

Responses using this status code SHOULD include an explanation, in the response body, of the details of the legal demand: the party making it, the applicable legislation or regulation, and what classes of person and resource it applies to. For example:

HTTP/1.1 451 Unavailable For Legal Reasons
Link: <https://spqr.example.org/legislatione>; rel="blocked-by"
Content-Type: text/html

<html>
  <head>
    <title>Unavailable For Legal Reasons</title>
  </head>
  <body>
    <h1>Unavailable For Legal Reasons</h1>
    <p>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.</p>
  </body>
</html>

The use of the 451 status code implies neither the existence nor non- existence of the resource named in the request. That is to say, it is possible that if the legal demands were removed, a request for the resource still might not succeed.

Note that in many cases clients can still access the denied resource by using technical countermeasures such as a VPN or the Tor network.

A 451 response is cacheable by default; i.e., unless otherwise indicated by the method definition or explicit cache controls; see RFC7234.