INTEGRITY Документация

Параметры URL rewrite

Статическая и динамическая перезапись URL используют разные параметры:

URL rewrite с шаблонами подстановочных знаков представляет собой упрощенный интерфейс в панели управления Cloudflare для создания динамических URL rewrite с сопоставление и замена с подстановочными знаками.

Максимальная суммарная длина значений всех параметров в одном правиле URL Rewrite составляет 4,096 символов. Например, вы можете указать статическое значение (или выражение) длиной 2,048 символов для пути URI и статическое значение (или выражение) длиной 2,048 символов для строки запроса.

Информация об API

Статическая перезапись URL

Полный синтаксис action_parameters поле для правила статической перезаписи URL, которое переписывает и путь URI, и строку запроса, выглядит следующим образом:

"action_parameters": {
  "uri": {
    "path": {
      "value": "<URI_PATH_VALUE>"
    },
    "query": {
      "value": "<QUERY_STRING_VALUE>"
    }
  }
}

Если вы переписываете только путь URI или строку запроса, не указывайте query или path параметр соответственно.

Динамические URL rewrites

Полный синтаксис action_parameters поле для правила динамической перезаписи URL, которое переписывает и путь URI, и строку запроса, выглядит следующим образом:

"action_parameters": {
  "uri": {
    "path": {
      "expression": "<URI_PATH_EXPRESSION>"
    },
    "query": {
      "expression": "<QUERY_STRING_EXPRESSION>"
    }
  }
}

Если вы переписываете только путь URI или строку запроса, не указывайте query или path параметр соответственно.

Сопоставление и замена по подстановочным символам

Синтаксис динамического правила переписывания URL, которое изменяет и URI-путь, и строку запроса на основе сопоставления с символами подстановки и их замены, выглядит так:

{
	"expression": "(http.request.full_uri wildcard r\"<REQUEST_URL>\")",
	"action_parameters": {
		"uri": {
			"path": {
				"expression": "wildcard_replace(http.request.uri.path, r\"<PATH_TARGET_PATH>\", r\"<PATH_REWRITE_TO>\")"
			},
			"query": {
				"expression": "wildcard_replace(http.request.uri.query, r\"<QUERY_TARGET_QUERY>\", r\"<QUERY_REWRITE_TO>\")"
			}
		}
	},
	"action": "rewrite"
	// ...
}

<REQUEST_URL>, <PATH_TARGET_PATH>, <PATH_REWRITE_TO>, <QUERY_TARGET_QUERY>, а также <QUERY_REWRITE_TO> значения-заполнители соответствуют полям, доступным в панели управления Cloudflare при выборе Шаблон с подстановочными символами параметр. Дополнительную информацию см. в Параметры шаблона с подстановочными символами.

Разные типы URL rewrite в одном правиле

Одно и то же правило может по-разному переписывать URI-путь и строку запроса. Например, одно правило может выполнять динамический перезапись URL для пути URI и статический перезапись URL для строки запроса. Синтаксис такого правила будет выглядеть следующим образом:

"action_parameters": {
  "uri": {
    "path": {
      "expression": "<URI_PATH_EXPRESSION>"
    },
    "query": {
      "value": "<QUERY_STRING_VALUE>"
    }
  }
}