← Cloudflare Ruleset Engine / ruleset-engine / rules-language
Výrazy
Rules language podporuje dva druhy výrazů: jednoduché a složené.
Jednoduché výrazy
Jednoduché výrazy porovnat hodnotu z HTTP požadavku s hodnotou definovanou ve výrazu. Následující jednoduchý výraz například odpovídá požadavkům Microsoft Exchange Autodiscover:
http.request.uri.path matches "/autodiscover\.(xml|src)$"Jednoduché výrazy mají následující syntaxi:
<field> <comparison_operator> <value>Kde:
-
Pole určují vlastnosti přidružené k HTTP požadavku.
-
Porovnávací operátory určují, jak musí hodnoty souviset se skutečnými daty požadavku, aby se výraz vyhodnotil jako
true. -
Hodnoty představují data přiřazená k polím. Při vyhodnocování pravidla Cloudflare tyto hodnoty porovnává se skutečnými daty získanými z požadavku.
Složené výrazy
Složené výrazy použít logické operátory jako například and abyste zkombinovali dva nebo více výrazů do jednoho výrazu.
Tento výraz například používá and operátor pro cílení na požadavky na www.example.com , které nejsou na portech 80 nebo 443:
http.host eq "www.example.com" and not cf.edge.server_port in {80 443}Složené výrazy mají následující obecnou syntaxi:
<expression> <logical_operator> <expression>Složené výrazy umožňují vytvářet sofistikovaná, velmi přesně cílená pravidla.
Maximální délka výrazu pravidla
Maximální délka výrazu pravidla je 4,096 znaků.
Tento limit platí bez ohledu na to, zda používáte vizuální Expression Builder k definování výrazu, nebo výraz napište ručně v Expression Editor.
Maximální počet regulárních výrazů na pravidlo
Každé pravidlo může ve svém výrazu obsahovat maximálně 64 regulárních výrazů. Tento limit platí pro všechny typy pravidel, které používají Rules language.
Pravidla přesahující tento limit nelze vytvořit ani aktualizovat. Stávající pravidla nad tímto limitem nadále fungují, ale nelze je upravovat, dokud se výraz nezjednoduší.
Další funkce
Ve svých výrazech můžete také použít následující funkce Rules language:
-
Symboly seskupení umožňují explicitně seskupit výrazy, které mají být vyhodnoceny společně.
-
Funkce umožňují upravovat a ověřovat hodnoty ve výrazech.