Skip to content

[Rules, WAF] Clarify Error Pages #22101

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 3 commits into from
Apr 30, 2025
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next Next commit
[Rules, WAF] Clarify Error Pages
  • Loading branch information
pedrosousa committed Apr 30, 2025
commit 45b5c78bce6035ad5cf1e5984a1facab521743a5
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ head:

Each custom error token provides diagnostic information or specific functionality that appears on the error page. Certain error pages require a page-specific custom error token.

To display a custom page for each error, create a separate page per error. For example, to create a custom error page for both **IP/Country Block** and **Interactive Challenge**, you must design and publish two separate pages.
To display a custom page for each error, create a separate page per error. For example, to create an error page for both **IP/Country Block** and **Interactive Challenge**, you must design and publish two separate pages.

The following custom error tokens are required by their respective custom error pages:
The following custom error tokens are required by their respective error pages:

| Token | Required for |
| -------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ The errors covered in this document may occur when accessing a website proxied b

HTTP errors such as `409`, `530`, `403`, and `429` are returned in the HTTP status header of a response, while 1XXX errors appear in the HTML body of the response.

:::note[Custom Error Pages]
:::note[Customize error pages]
Cloudflare [Custom Errors](/rules/custom-errors/) allows customers to customize the default error pages discussed in this article.
:::

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ For more information on challenge actions, refer to [Cloudflare challenges](/fun

Setting a timeout shorter than the threshold causes the API to automatically increase the timeout to equal the threshold.

Visitors hitting a rate limit receive a default HTML page if a [custom error page](/rules/custom-errors/) is not specified. In addition, Business and Enterprise customers can specify a response in the rule itself. Refer to [Configure Advanced Response](#task-3-configure-advanced-response-only-business-and-enterprise-plans) for details.
Visitors hitting a rate limit receive a default HTML page if a custom [error page](/rules/custom-errors/) is not specified. In addition, Business and Enterprise customers can specify a response in the rule itself. Refer to [Configure Advanced Response](#task-3-configure-advanced-response-only-business-and-enterprise-plans) for details.

---

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,16 +43,16 @@ Custom block response configurations will not be returned by the Firewall Rules

### Different error page for blocked requests

Requests blocked by a firewall rule with a _Block_ action would get a Cloudflare [1020 error code](/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/#error-1020-access-denied) response. Cloudflare users could customize this error page in **Custom Pages** > **1000 Class Errors**.
Requests blocked by a firewall rule with a _Block_ action would get a Cloudflare [1020 error code](/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/#error-1020-access-denied) response. Cloudflare users could customize this error page for a zone in **Error Pages** > **1000 class errors**.

Requests blocked by a WAF custom rule will get a different response: the WAF block response. To customize the default block response, you can either:

- Define a custom WAF block response for your entire zone in [**Custom Pages**](https://dash.cloudflare.com/?to=/:account/:zone/custom-pages) > **WAF Block**. This custom page will always have an HTML content type.
- Define a custom WAF block response for your entire zone in [**Error Pages**](https://dash.cloudflare.com/?to=/:account/:zone/error-pages) > **WAF block**. This error page will always have an HTML content type.
- [Define a custom response](/waf/custom-rules/create-dashboard/#configure-a-custom-response-for-blocked-requests) for requests blocked by a specific WAF custom rule. This custom response supports other content types besides HTML.

If you have customized your 1xxx error page in Custom Pages for requests blocked by firewall rules, you will need to create a new response page for blocked requests using one of the above methods.
If you have customized your 1XXX error page in Error Pages for requests blocked by firewall rules, you will need to create a new response page for blocked requests using one of the above methods.

For more information on custom Error Pages, refer to [Custom Errors](/rules/custom-errors/).
For more information on Error Pages, refer to [Custom Errors](/rules/custom-errors/).

### New Skip action replacing both Allow and Bypass actions

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@ import { Markdown } from "~/components";
| Access: SSH Auditing Read | Grants read access to [Cloudflare Access SSH CAs](/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/). |
| Access: SSH Auditing {props.editWord} | Grants write access to [Cloudflare Access SSH CAs](/cloudflare-one/connections/connect-networks/use-cases/ssh/ssh-infrastructure-access/). |
| Account Analytics Read | Grants read access to [account analytics](/analytics/account-and-zone-analytics/account-analytics/). |
| Account Custom Pages Read | Grants read access to account-level [Custom Error Pages](/rules/custom-errors/). |
| Account Custom Pages {props.editWord} | Grants write access to account-level [Custom Error Pages](/rules/custom-errors/). |
| Account Custom Pages Read | Grants read access to account-level [Error Pages](/rules/custom-errors/). |
| Account Custom Pages {props.editWord} | Grants write access to account-level [Error Pages](/rules/custom-errors/). |
| Account { props.src === "dash" ? "Filter" : "Rule" } Lists Read | Grants read access to Account Filter Lists. |
| Account { props.src === "dash" ? "Filter" : "Rule" } Lists {props.editWord} | Grants write access to Account Filter Lists. |
| Account Firewall Access Rules Read | Grants read access to account firewall access rules. |
Expand Down
4 changes: 2 additions & 2 deletions src/content/plans/index.json
Original file line number Diff line number Diff line change
Expand Up @@ -1237,8 +1237,8 @@
"biz": 50,
"ent": 300
},
"x_custom_pages": {
"title": "Custom Error Pages",
"x_error_pages": {
"title": "Error Pages",
"free": "No",
"pro": "Yes",
"biz": "Yes",
Expand Down
Loading