← Cloudflare Rules / rules / normalization
Jak funguje normalizace URL
Normalizace URL upravuje oddělovače, kódované prvky a doslovné bajty v příchozích URL adresách tak, aby odpovídaly jednotnému formátovacímu standardu.
Uvažujme například vlastní pravidlo WAF, které blokuje požadavky, jejichž adresy URL odpovídají www.example.com/hello. Pravidlo by nezablokovalo požadavek obsahující zakódovaný prvek, například www.example.com/%68ello. Normalizace příchozích URL adres v globální síti Cloudflare pomáhá zjednodušit výrazy pravidel obsahující URL adresy.
Dva dostupné typy normalizace URL jsou:
Místo, kde dojde k normalizaci URL, závisí na nakonfigurovaná nastavení.
Příklady různých nastavení a jejich vlivu na adresy URL požadavků naleznete v Příklady normalizace URL.
Normalizace podle RFC 3986
Normalizace URL prováděná podle RFC 3986 ↗ je následující:
- Následující nevyhrazené znaky jsou procentně dekódováno ↗ (převedeno z jejich
%XXzakódovaného tvaru zpět na původní znak):- Abecední znaky:
a-z,A-Z(dekódováno z%41-%5Aa%61-%7A) - Číslice:
0-9(dekódováno z%30-%39) - spojovník
-(%2D), tečku.(%2E), podtržítko_(%5F), a vlnovku~(%7E)
- Abecední znaky:
- Tyto rezervované znaky se nekódují ani nedekódují:
: / ? # [ ] @ ! $ & ' ( ) * + , ; = - Ostatní znaky, například přímé bajtové hodnoty, se kódují v procentuálním zápisu.
- Zápisy v procentuálním kódování se převádějí na velká písmena.
- Cesty URL jsou normalizovány podle Remove Dot Segments ↗ protokol.
Normalizace Cloudflare
Pokud používáte normalizaci URL adres Cloudflare, na URL adresy příchozích požadavků se v následujícím pořadí použijí další techniky normalizace:
- Normalizace zpětných lomítek (
\) na lomítka (/). - Sloučení po sobě jdoucích lomítek (například
//se normalizuje na/). - Proveďte Normalizace podle RFC 3986 výsledné URL adresy.