← Cloudflare Load Balancing / load-balancing / additional-options / load-balancing-rules
Výrazy
Pravidla Load Balancing používají dva druhy výrazů:
-
Jednoduché výrazy porovnávají hodnotu z HTTP požadavku s hodnotou definovanou ve výrazu. Jednoduchý výraz poznáte podle přítomnosti porovnávací operátor (equals nebo menší než, například).
-
Složené výrazy kombinují dva nebo více jednoduchých výrazů do jednoho výrazu. Složený výraz obsahuje logický operátor (a, nebo, například). Pomocí složených výrazů můžete pravidla přizpůsobit konkrétním případům použití s vysokou mírou přesnosti.
Jednoduché výrazy
Jednoduché výrazy se skládají ze tří částí:
- A pole která představuje vlastnost HTTP požadavku.
- Reprezentativní hodnota pro toto pole, kterou Cloudflare porovnává se skutečnou hodnotou požadavku.
- A porovnávací operátor, který určuje, jaký vztah musí mít hodnota definovaná ve výrazu ke skutečné hodnotě z požadavku, aby operátor vrátil
true.
Když operátor porovnání vrátí true, požadavek odpovídá výrazu.
Tento ukázkový výraz vrátí true, pokud cesta URI požadavku obsahuje /content:
(http.request.uri.path contains "/content")Obecně platí, že jednoduché výrazy používají tento vzor:
<field> <operator> <value>Podrobnosti uvádí Podporovaná pole a operátory.
Složené výrazy
Složený výraz používá logický operátor (a, nebo, například) ke kombinaci dvou nebo více výrazů. Složené výrazy umožňují sestavit složitá tvrzení v rámci jediného výrazu.
Níže uvedený vzorový výraz vrátí hodnotu true, pokud cesta URI požadavku HTTP obsahuje současně /content a řetězec dotazu obsahuje webserver:
(http.request.uri.path contains "/content")
and (http.request.uri.query contains "webserver")Obecně platí, že složené výrazy používají tento vzor:
<expression> <logical operator> <expression>Složený výraz může být operandem logického operátoru. Díky tomu lze pomocí více operátorů sestavit složený výraz z mnoha jednotlivých výrazů.
Podrobnosti uvádí Podporovaná pole a operátory.
Práce s výrazy
Vizuální rozhraní nástroje Expression Builder vám umožňuje vytvářet výrazy, aniž byste se museli starat o názvy polí a syntaxi.
Expression Editor je naproti tomu pouze textový, ale podporuje pokročilé funkce, které nejsou v builderu k dispozici.
Expression Builder
Složené výrazy se ve vizuálním rozhraní Expression Builderu snáze čtou. Expression Preview je pak skvělým pomocníkem při psaní pokročilejších výrazů.
Tento snímek obrazovky z Expression Builderu zobrazuje složený výraz popsaný výše. Ve vizuálním rozhraní Expression Builderu se složené výrazy prochází přehledněji.
Expression Preview zobrazí výraz v textové podobě:
(http.request.uri.path contains "/content")
and (http.request.uri.query contains "webserver")Podrobný postup najdete v Vytváření pravidel pro Load Balancing.
Expression Editor
Expression Editor je čistě textové rozhraní pro vytváření výrazů Load Balancing. I když nemá vizuální jednoduchost nástroje Expression Builder, podporuje pokročilé funkce, jako je podpora seskupovacích symbolů (závorek).
Pro přístup k Expression Editor v Provoz aplikaci klikněte na Edit expression v Vytvoření vlastního pravidla dialog.
Chcete-li se vrátit do nástroje pro tvorbu výrazů, klikněte na Použijte nástroj pro tvorbu výrazů.
Seznamy pravidel
Load Balancing Custom Rules nepodporuje operátory IP Lists.