Cloudflare Docs
Rules
Rules
Visit Rules on GitHub
Set theme to dark (⇧+D)

Available settings

The following sections describe the settings of redirect rules to configure static and dynamic URL redirects.

​​ Static URL redirect

Performs a static URL redirect with a given HTTP status code and optionally preserves the query string.

A static URL redirect has the following configuration parameters:

  • URL: A literal string that will be used in the Location HTTP header returned in the redirect response.

  • Status code: The HTTP status code of the redirect response (301 by default). Must be one of the following: 301 (Moved permanently), 302 (Found, also known as Moved temporarily), 307 (Temporary redirect), or 308 (Permanent redirect).

  • Preserve query string: Whether to preserve the query string when redirecting (disabled by default).

API information

The full syntax of the "action_parameters" field for a redirect rule performing a static URL redirect is the following:

"action_parameters": {
"from_value": {
"target_url": {
"value": "<STATIC_URL_VALUE>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}

The only required parameter is <STATIC_URL_VALUE>.

The optional parameters can have the following values:

  • "status_code" (integer): 301 (Moved permanently), 302 (Found, also known as Moved temporarily), 307 (Temporary redirect), or 308 (Permanent redirect).
  • "preserve_query_string" (boolean): true or false.

​​ Dynamic URL redirect

Performs a dynamic URL redirect, where the target URL is determined by an expression. You can configure the redirect HTTP status code and whether to preserve the query string when redirecting.

A dynamic URL redirect has the following configuration parameters:

  • Expression: An expression that defines the target URL of the redirect. The result of evaluating this expression will be used in the Location HTTP header returned in the redirect response.

  • Status code: The HTTP status code of the redirect response (301 by default). Must be one of the following: 301 (Moved permanently), 302 (Found, also known as Moved temporarily), 307 (Temporary redirect), or 308 (Permanent redirect).

  • Preserve query string: Whether to preserve the query string when redirecting (disabled by default).

API information

The full syntax of the "action_parameters" field for a redirect rule performing a dynamic URL redirect is the following:

"action_parameters": {
"from_value": {
"target_url": {
"expression": "<DYNAMIC_URL_EXPRESSION>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}

The only required parameter is <DYNAMIC_URL_EXPRESSION>.

The optional parameters can have the following values:

  • "status_code" (integer): 301 (Moved permanently), 302 (Found, also known as Moved temporarily), 307 (Temporary redirect), or 308 (Permanent redirect).
  • "preserve_query_string" (boolean): true or false.