← Правила Cloudflare / rules / url-forwarding / single-redirects
Настройки Single Redirects
В следующих разделах описаны настройки redirect rules для настройки статических и динамических URL redirect.
Перенаправление URL с подстановочными символами
Выполняет переадресацию URL-адреса с помощью шаблоны с подстановочными знаками для сопоставления нескольких запросов. Этот метод упрощает задание шаблонов исходных и целевых URL-адресов без необходимости использовать сложные выражения.
URL redirect с подстановочными знаками имеет следующие параметры настройки:
-
Request URL: Введите шаблон с подстановочными знаками с помощью звёздочки (
*) символ для соответствия нескольким запросам. Например,https://*.example.com/files/*. -
Целевой URL: Введите целевой URL-адрес, который может быть статическим (например,
https://example.com) или динамическим (например,https://example.com/${1}/files/${2}). Используйте замена с подстановочными знаками например${1},${2}, и так далее, чтобы задать динамические цели. -
Код состояния: Код состояния HTTP ответа перенаправления (301: постоянное перенаправление по умолчанию). Должно быть одним из следующих значений:
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 302: временное перенаправление: Страница временно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 307: расширенный вариант, временное перенаправление с сохранением исходного метода HTTP: Страница временно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу. - 308: расширенный вариант, постоянное перенаправление с сохранением исходного метода HTTP: Страница окончательно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу.
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
-
Сохранять строку запроса: Определяет, сохранять ли строку запроса при перенаправлении (по умолчанию отключено).
Информация об API
Перенаправления URL с подстановочными символами представляют собой обычные динамические редиректы URL которые используют wildcard_replace() функция в target_url.expression параметр.
Полный синтаксис "action_parameters" поле для правила перенаправления, выполняющего перенаправление URL с подстановочным знаком, выглядит следующим образом:
"action_parameters": {
"from_value": {
"target_url": {
"expression": "wildcard_replace(http.request.full_uri, r\"<REQUEST_URL_PATTERN>\", r\"<TARGET_URL_PATTERN>\")"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}Обязательными параметрами являются <REQUEST_URL_PATTERN> и <TARGET_URL_PATTERN>.
Необязательные параметры могут принимать следующие значения:
"status_code"(integer):301(постоянное перенаправление)302(временное перенаправление)307(временное перенаправление с сохранением исходного метода HTTP)308(постоянное перенаправление с сохранением исходного метода HTTP)
"preserve_query_string"(boolean):trueилиfalse
Статическое перенаправление URL
Выполняет статическую переадресацию URL-адреса с заданным кодом состояния HTTP и при необходимости сохраняет строку запроса.
Статический URL redirect имеет следующие параметры настройки:
-
URL: литеральная строка, которая будет использована в
LocationHTTP-заголовок, возвращаемый в ответе с перенаправлением. -
Код состояния: Код состояния HTTP ответа перенаправления (301: постоянное перенаправление по умолчанию). Должно быть одним из следующих значений:
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 302: временное перенаправление: Страница временно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 307: расширенный вариант, временное перенаправление с сохранением исходного метода HTTP: Страница временно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу. - 308: расширенный вариант, постоянное перенаправление с сохранением исходного метода HTTP: Страница окончательно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу.
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
-
Сохранять строку запроса: Определяет, сохранять ли строку запроса при перенаправлении (по умолчанию отключено).
Информация об API
Полный синтаксис "action_parameters" поле для правила перенаправления, выполняющего статическое перенаправление URL, выглядит следующим образом:
"action_parameters": {
"from_value": {
"target_url": {
"value": "<STATIC_URL_VALUE>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}Единственным обязательным параметром является <STATIC_URL_VALUE>.
Необязательные параметры могут принимать следующие значения:
"status_code"(integer):301(постоянное перенаправление)302(временное перенаправление)307(временное перенаправление с сохранением исходного метода HTTP)308(постоянное перенаправление с сохранением исходного метода HTTP)
"preserve_query_string"(boolean):trueилиfalse
Динамический URL redirect
Выполняет динамическую переадресацию URL-адреса, при которой целевой URL-адрес определяется выражением. Вы можете настроить код состояния HTTP для переадресации и указать, сохранять ли строку запроса при переадресации.
Динамический URL redirect имеет следующие параметры настройки:
-
Выражение: выражение которое определяет целевой URL перенаправления. Результат вычисления этого выражения будет использован в
LocationHTTP-заголовок, возвращаемый в ответе с перенаправлением. См. поля и функции которые можно использовать в выражениях. -
Код состояния: Код состояния HTTP ответа перенаправления (301: постоянное перенаправление по умолчанию). Должно быть одним из следующих значений:
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 302: временное перенаправление: Страница временно перемещена на новый адрес. Для
POSTзапросов клиент или браузер может изменить метод HTTP наGETпри переходе по редиректу. - 307: расширенный вариант, временное перенаправление с сохранением исходного метода HTTP: Страница временно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу. - 308: расширенный вариант, постоянное перенаправление с сохранением исходного метода HTTP: Страница окончательно перемещена на новый адрес. Клиент или браузер должен сохранить исходный HTTP метод (например,
POST) при переходе по редиректу.
- 301: постоянное перенаправление: Страница окончательно перемещена на новый адрес. Для
-
Сохранять строку запроса: Определяет, сохранять ли строку запроса при перенаправлении (по умолчанию отключено).
Информация об API
Полный синтаксис "action_parameters" поле для правила перенаправления, выполняющего динамическое перенаправление URL, выглядит следующим образом:
"action_parameters": {
"from_value": {
"target_url": {
"expression": "<DYNAMIC_URL_EXPRESSION>"
},
"status_code": <STATUS_CODE>,
"preserve_query_string": <BOOLEAN_VALUE>
}
}Единственным обязательным параметром является <DYNAMIC_URL_EXPRESSION>.
Необязательные параметры могут принимать следующие значения:
"status_code"(integer):301(постоянное перенаправление)302(временное перенаправление)307(временное перенаправление с сохранением исходного метода HTTP)308(постоянное перенаправление с сохранением исходного метода HTTP)
"preserve_query_string"(boolean):trueилиfalse