Text v Expression Editor:
(lower(raw.http.request.full_uri) wildcard "*%2f*")Text za Cesta > Přepsat na > Dynamický:
url_decode(http.request.uri.path)← Cloudflare Rules / rules / transform / examples
Různé webové servery a aplikace zpracovávají kódovaná lomítka (%2F) v URL adresách odlišně. Cloudflare se řídí RFC 3986 ↗, který určuje, že %2F by nemělo se automaticky normalizuje na / protože / je v URL vyhrazený znak a jeho dekódování by mohlo změnit zamýšlený význam cesty.
Mnoho origin serverů však dělat automaticky dekóduje %2F do / při zpracování požadavků. Pokud se váš origin server chová tímto způsobem, můžete zvážit použití stejné normalizace na edge Cloudflare, abyste zajistili konzistenci při zpracování požadavků, vyhodnocování pravidel a protokolování.
%2FChcete-li normalizovat zakódovaná lomítka (%2F) na standardní lomítka (/) v cestě požadavku před následující vyhodnocení pravidla vytvořte nové pravidlo přepisu URL a definujte dynamický přepis cesty URL pomocí url_decode() funkce:
Text v Expression Editor:
(lower(raw.http.request.full_uri) wildcard "*%2f*")Text za Cesta > Přepsat na > Dynamický:
url_decode(http.request.uri.path)Tato transformace zajišťuje, že %2F je vždy zpracována jako / v cestě požadavku. To je užitečné zejména při nastavování pravidel závislých na shodě cesty URL, protože to zabraňuje nesrovnalostem způsobeným odlišným chováním normalizace.