Текст в Expression Editor:
(lower(raw.http.request.full_uri) wildcard "*%2f*")Текст после Путь > Rewrite to > Динамический:
url_decode(http.request.uri.path)← Правила Cloudflare / rules / transform / examples
Разные веб-серверы и приложения по-разному обрабатывают закодированные прямые слеши (%2F) в URL-адресах по-разному. Cloudflare следует RFC 3986 ↗, которое указывает, что %2F не должен автоматически нормализуется в / так как / является зарезервированным символом в URL, и его декодирование может изменить исходный смысл пути.
Однако многие ориджин-серверы соответствует автоматически декодирует %2F в / при обработке запросов. Если ваш исходный сервер ведёт себя таким образом, вы можете применить такую же нормализацию на периферийной сети Cloudflare, чтобы обеспечить единообразие при обработке запросов, оценке правил и логировании.
%2FЧтобы нормализовать закодированные косые черты (%2F) на стандартные косые черты (/) в пути запроса перед последующий правила создайте новое правило перезаписи URL и определите динамическую перезапись пути URL с помощью url_decode() функция:
Текст в Expression Editor:
(lower(raw.http.request.full_uri) wildcard "*%2f*")Текст после Путь > Rewrite to > Динамический:
url_decode(http.request.uri.path)Это преобразование гарантирует, что %2F всегда обрабатывается как / в пути запроса. Это особенно полезно при настройке правил, зависящих от совпадения пути URL, поскольку это предотвращает несоответствия, вызванные различным поведением нормализации.