← Cloudflare Cache / cache / how-to / cache-response-rules
Dostupná nastavení
Toto jsou nastavení, která můžete konfigurovat při vytváření Cache Response Rule. Protože se Cache Response Rules vyhodnocují až poté, co Cloudflare obdrží odpověď origin serveru, jsou pro porovnávání pravidla k dispozici jak pole požadavku, tak pole odpovědi.
Pole výrazů
Pole požadavku
| Pole | Typ | Popis |
|---|---|---|
http.cookie |
Řetězec | Úplná hodnota hlavičky cookie |
http.host |
Řetězec | HTTP hlavička Host |
http.referer |
Řetězec | HTTP hlavička Referer |
http.user_agent |
Řetězec | HTTP hlavička User-Agent |
http.request.method |
Řetězec | Metoda HTTP požadavku |
http.request.uri |
Řetězec | URI požadavku |
http.request.uri.path |
Řetězec | Cesta URI |
http.request.uri.path.basename |
Řetězec | Basename cesty URI |
http.request.uri.path.extension |
Řetězec | Přípona souboru z cesty URI |
http.request.uri.query |
Řetězec | Query string |
http.request.uri.args |
Map | Argumenty query string jako páry klíč-hodnota |
http.request.uri.args.names |
Array | Názvy argumentů query string |
http.request.uri.args.values |
Array | Hodnoty argumentů query string |
http.request.full_uri |
Řetězec | Úplné URI požadavku včetně schématu a hostitele |
http.request.headers |
Map | Hlavičky požadavku jako páry klíč-hodnota |
http.request.headers.names |
Array | Názvy hlaviček požadavku |
http.request.headers.values |
Array | Hodnoty hlaviček požadavku |
http.request.cookies |
Map | Parsované cookies jako páry klíč-hodnota |
http.request.accepted_languages |
Array | Parsované hodnoty hlavičky Accept-Language |
Pole odpovědi
| Pole | Typ | Popis |
|---|---|---|
http.response.code |
Celé číslo | Stavový kód HTTP odpovědi z originu |
http.response.headers |
Map | Hlavičky odpovědi jako páry klíč-hodnota |
http.response.headers.names |
Array | Názvy hlaviček odpovědi |
http.response.headers.values |
Array | Hodnoty hlaviček odpovědi |
Pokud vyberete Edit expression možnosti můžete zadat kterékoli z výše uvedených polí odpovědi.
Funkce
V této fázi jsou k dispozici následující funkce:
- all
- any
- concat
- decode_base64
- ends_with
- len
- lookup_json_integer
- lookup_json_string
- lower
- regex_replace
- remove_bytes
- remove_query_args
- split
- starts_with
- podřetězec
- to_string
- upper
- url_decode
- wildcard_replace
Popis jednotlivých funkcí najdete v části Funkce.
Operátory
Úplný seznam operátorů najdete v části Operátory.
Dostupné akce
Cache Response Rules podporují tři akce:
| Akce | Popis |
|---|---|
set_cache_settings |
Před uložením do mezipaměti odeberte z odpovědi originu hlavičky (ETags, Set-Cookie, Last-Modified). |
set_cache_tags |
Přidávejte, odebírejte nebo nastavujte značky mezipaměti (cache tags) v odpovědi pro cílené vymazávání. |
set_cache_control |
Upravte direktivy hlavičky Cache-Control v odpovědi origin serveru. |
Akce: set_cache_settings
Konfiguruje nastavení související s ukládáním do mezipaměti u odpovědi originu. K dispozici jsou tyto parametry:
| Parametr | Typ | Popis |
|---|---|---|
strip_etags |
Boolean | Před uložením do mezipaměti odeberte hlavičky ETag z odpovědi originu. |
strip_set_cookie |
Boolean | Před uložením do mezipaměti odeberte hlavičky Set-Cookie z odpovědi originu. |
strip_last_modified |
Boolean | Před uložením do mezipaměti odeberte hlavičky Last-Modified z odpovědi originu. |
Informace o API
Akce API: set_cache_settings.
"action_parameters": {
"strip_etags": true,
"strip_set_cookie": true,
"strip_last_modified": true
}Viz Vytvoření pravidla přes API pro úplné příklady API.
Akce: set_cache_tags
Upravuje značky cache přiřazené k odpovědi. Značky cache lze použít k cílenému vymazávání cache.
| Parametr | Typ | Popis |
|---|---|---|
operation |
Řetězec | Povinné. Jedna z hodnot: add, remove, set. |
values |
Array | Seznam řetězců značek mezipaměti (cache tags). Vzájemně se vylučuje s expression. |
expression |
Řetězec | Výraz, který se vyhodnotí na pole značek mezipaměti. Vzájemně se vylučuje s values. |
Informace o API
Akce API: set_cache_tags.
"action_parameters": {
"operation": "set",
"values": ["api-response", "dynamic-content"]
}"action_parameters": {
"operation": "add",
"expression": "split(http.response.headers[\"Surrogate-Keys\"][0], \",\", 1)"
}Viz Vytvoření pravidla přes API pro úplné příklady API.
Akce: set_cache_control
Upravuje direktivy hlavičky Cache-Control v odpovědi origin serveru.
Podporované direktivy
Direktivy s hodnotou doby trvání (v sekundách):
max-ages-maxagestale-if-errorstale-while-revalidate
Direktivy s volitelnými kvalifikátory (názvy hlaviček):
privateno-cache
Booleovské direktivy:
no-storeno-transformmust-revalidateproxy-revalidatemust-understandpublicimmutable
Konfigurace direktivy
Dostupné parametry závisí na typu direktivy.
Direktivy s hodnotou doby trvání
Platí pro max-age, s-maxage, stale-if-error, a stale-while-revalidate.
| Parametr | Typ | Popis |
|---|---|---|
operation |
Řetězec | Povinné. set nebo remove. |
cloudflare_only |
Boolean | Po zapnutí toto nastavení ovlivňuje pouze způsob, jakým Cloudflare ukládá váš obsah do mezipaměti. Vaši návštěvníci nadále dostávají původní direktivu. |
value |
Celé číslo | Doba trvání v sekundách. Povinné, pokud je operace set. |
Direktivy s volitelnými kvalifikátory
Platí pro private a no-cache.
| Parametr | Typ | Popis |
|---|---|---|
operation |
Řetězec | Povinné. set nebo remove. |
cloudflare_only |
Boolean | Po zapnutí toto nastavení ovlivňuje pouze způsob, jakým Cloudflare ukládá váš obsah do mezipaměti. Vaši návštěvníci nadále dostávají původní direktivu. |
qualifiers |
Array | Volitelný seznam názvů hlaviček upřesňujících direktivu. |
Booleovské direktivy
Platí pro no-store, no-transform, must-revalidate, proxy-revalidate, must-understand, public, a immutable.
| Parametr | Typ | Popis |
|---|---|---|
operation |
Řetězec | Povinné. set nebo remove. |
cloudflare_only |
Boolean | Po zapnutí toto nastavení ovlivňuje pouze způsob, jakým Cloudflare ukládá váš obsah do mezipaměti. Vaši návštěvníci nadále dostávají původní direktivu. |
Informace o API
Akce API: set_cache_control.
"action_parameters": {
"max-age": {
"operation": "set",
"value": 3600,
"cloudflare_only": true
},
"stale-if-error": {
"operation": "remove"
}
}Viz Vytvoření pravidla přes API pro úplné příklady API.