HTTP 451 Unavailable For Legal Reasons

HTTP 451 Unavailable For Legal Reasons means the server is refusing access because of a legal obligation — a court order, government directive, DMCA takedown notice, or copyright enforcement action. Named in reference to Ray Bradbury’s Fahrenheit 451, the code gives servers a way to communicate legal content removal transparently, rather than returning 403 (a policy decision) or 404 (which hides the resource’s existence).

HTTP 451 quick reference →

Quick reference

Code451
NameUnavailable For Legal Reasons
Category4xx Client Error
SpecificationRFC 7725
Cacheable?Yes — same rules as 200 OK
Key headerLink: <url>; rel="blocked-by"
Geographic scopeCan apply only to specific jurisdictions

The blocked-by header

RFC 7725 defines a Link header with rel="blocked-by" to identify the entity responsible for the legal block. This provides transparency: users and developers can see who issued the demand that caused the removal.

HTTP/1.1 451 Unavailable For Legal Reasons
Link: <https://legal.example.gov/order/1234>; rel="blocked-by"
Content-Type: text/html

<!doctype html>
<html>
<body>
  <h1>Unavailable For Legal Reasons</h1>
  <p>This resource is unavailable due to a court order issued by
     [Authority]. Reference: Case No. 1234.</p>
  <p><a href="https://legal.example.gov/order/1234">Order details</a></p>
</body>
</html>

The blocked-by URL should point to the legal order, government notice, DMCA claim, or the authority that issued the takedown. When the blocking entity is confidential (as some government orders require), the URL may point to a generic explanation of the confidentiality constraint rather than the specific order.

When 451 is used

DMCA takedown notices: Under the US Digital Millennium Copyright Act, a rightsholder can send a takedown notice to a hosting provider or platform. Upon receipt, the platform removes or blocks the content. 451 with a blocked-by link pointing to the Lumen Database (which archives DMCA notices) is the appropriate response. GitHub, Google, and Automattic use 451 for DMCA removals.

Government content orders: Governments can compel platforms to block content. Germany requires removal of certain prohibited material. India issues blocking orders for specific URLs. Turkey periodically blocks platforms. When blocking is jurisdiction-specific, the server can return 451 only for requests from the affected jurisdiction while serving the content normally elsewhere.

Court orders: A court can order removal of defamatory content, trade secrets, or material covered by a non-disclosure agreement. The platform receiving such an order removes the content and may return 451 with a reference to the court proceeding if disclosure is not prohibited.

Copyright enforcement: The Internet Watch Foundation and similar organizations maintain blocklists of URLs hosting illegal content. ISPs and hosting providers enforcing these lists may return 451 for blocked URLs. Some implementations use 403 instead, but 451 is semantically more accurate when the block is legally mandated rather than a platform policy choice.

Geographic filtering with 451

451 can be returned selectively based on the requester’s jurisdiction, identified by IP geolocation. The body should indicate which jurisdiction the block applies to:

HTTP/1.1 451 Unavailable For Legal Reasons
Link: <https://example.gov/order/5678>; rel="blocked-by"
Content-Type: application/json

{
  "error": "legal_block",
  "jurisdiction": "DE",
  "reason": "This content is restricted under German law.",
  "blocked_by": "https://example.gov/order/5678"
}

Cloudflare and other CDN providers offer geographic filtering rules that can return 451 for specific countries without requiring application-level code changes. Configure the rule to match the affected country code and return a custom 451 response with the appropriate blocked-by header.

Cacheability

RFC 7725 gives 451 the same cacheability as 200 OK. A CDN or browser cache may cache a 451 response and serve it to subsequent requests without contacting the origin. The Cache-Control header in the 451 response controls the cache duration. For long-lived legal blocks, a long TTL reduces origin load. For temporary injunctions that may be reversed, use a shorter TTL or no-cache so the response is revalidated before being served from cache.

451 vs 403 vs 404 vs 410

CodeMeaningWhen to use
451Legal blockResource blocked by legal order, DMCA notice, or government directive
403ForbiddenResource exists but access denied by platform policy or permissions
404Not FoundResource does not exist (or existence is being denied)
410GoneResource permanently removed (no legal reason implied)

The distinction between 451 and 403 matters for transparency. A 403 implies an access control decision the platform made voluntarily. A 451 communicates that an external legal authority compelled the removal. Using 451 allows users to understand the block is not a discretionary policy choice.

Frequently asked questions

What does HTTP 451 mean?

The resource has been blocked due to a legal demand — a court order, government directive, or DMCA takedown notice. The server is complying with a legal obligation. The Link: rel="blocked-by" header, if present, identifies who issued the demand.

Is a 451 response cached?

Yes. RFC 7725 gives 451 the same cacheability as 200 OK. CDNs and browsers may cache the response according to the Cache-Control header. Use appropriate TTLs based on how permanent the legal block is expected to be.

Can 451 apply only to certain countries?

Yes. A server can return 451 only for requests from specific jurisdictions while serving the content normally elsewhere. The response body should identify which jurisdiction the block applies to and the legal basis for it.

What is the difference between 451 and 403?

403 means the server refuses access based on its own policy or access control rules. 451 means the server is legally obligated to refuse access by an external legal authority. The semantic distinction matters for transparency and accountability.

Related guides

HTTP 403 Forbidden · HTTP 410 Gone · HTTP 404 Not Found

Standards reference

Definitions from the IANA HTTP Status Code Registry and RFC 7725. Human-readable guidance by ErrorLookup. · HTTP 451 quick reference →