← Cloudflare Cache / cache / how-to
Cache Response Rules
Cache Response Rules umožňují konfigurovat nastavení mezipaměti na základě vlastností požadavku a odpovědi. Tato pravidla se vyhodnocují ještě před uložením do mezipaměti v http_response_cache_settings fáze, která se spouští poté, co Cloudflare obdrží odpověď z originu.
Pomocí Cache Response Rules můžete:
- Upravit
Cache-Controldirektiv odeslaných vaším originem. - Upravte značky cache v odpovědích pro cílené vymazávání cache.
- Odebrat hlavičky (
ETag,Set-Cookie,Last-Modified) z odpovědí originu ještě před uložením do mezipaměti.
Cache Response Rules se vztahují jak na cachované, tak na necachované (dynamické) odpovědi z originu. Můžete tak například odstranit hlavičky Set-Cookie z odpovědí, které nejsou způsobilé pro ukládání do mezipaměti.
Cache Response Rules lze vytvořit v dashboard, přes API, nebo Terraform.
Dostupnost
Následující tabulka popisuje dostupnost Cache Response Rules v jednotlivých tarifech.
| Free | Pro | Business | Enterprise | |
|---|---|---|---|---|
| Dostupnost | Ano | Ano | Ano | Ano |
| Počet pravidel | 10 | 25 | 50 | 300 |
Řešení potíží
Při řešení problémů s Cache Response Rules použijte Cloudflare Trace zjistit, zda se pravidlo uplatňuje na konkrétní URL adresu.
Vztah k Cache Rules
Cache Response Rules pracují s odpovědí originu, zatímco Cache Rules pracují s příchozím požadavkem. Pokud si nastavení obou typů pravidel odporují, mají přednost Cache Response Rules.
Klíčové rozdíly:
- Způsobilost pro ukládání do mezipaměti: Pravidla Cache Rules zůstávají jediným mechanismem, který rozhoduje o tom, zda je obsah způsobilý k uložení do mezipaměti. Pravidla Cache Response Rules ale mohou učinit prostředek způsobilý k uložení do mezipaměti nezpůsobilým, a to nastavením
no-storedirektivu pomocíset_cache_controljako akci. - Origin Cache Control (OCC): Pokud jakékoli pravidlo v
http_response_cache_settingsfáze odpovídá, Cloudflare ve výchozím nastavení použije chování Origin Cache Control (origin_cache_control = true). - Přednost CDN-Cache-Control:
Cache-Controldirektivy nastavené pravidly Cache Response Rules mají přednost před originem nastavenou direktivouCloudflare-CDN-Cache-ControlaCDN-Cache-Controlhlaviček. Další informace najdete v Přednost hlavičky CDN-Cache-Control. - Skládání: Pravidla Cache Response Rules se skládají stejně jako pravidla Cache Rules. Pokud více pravidel určuje stejné nastavení, uplatní se poslední odpovídající pravidlo.
Příklad: Přednost OCC před Edge TTL
Vezměte v úvahu následující scénář:
- Pravidlo Cache Rule nastavuje Edge TTL na
override_origins hodnotou7200sekund (2 hodiny). - Pravidlo Cache Response Rule používá
set_cache_controlnastavits-maxagena3600sekund (1 hodina) scloudflare_onlyzapnuté. - Origin odpovídá
Cache-Control: s-maxage=600.
V takovém případě má přednost Cache Response Rule. Cloudflare uloží prostředek do mezipaměti na 3600 sekund (1 hodina) na základě s-maxage direktivou nastavenou pravidlem Cache Response Rule, zatímco návštěvníci nadále dostávají původní s-maxage=600 z originu, protože cloudflare_only je zapnuté.
Rozdíl oproti Workers a Transform Rules
Workers a Response Header Transform Rules se spustí až po rozhodnutí o ukládání do mezipaměti a nemohou ovlivnit, zda nebo jak se odpověď uloží do mezipaměti. Pouze Cache Response Rules může upravit chování mezipaměti na základě hlaviček odpovědi originu.
Pokud potřebujete přepsat Cache-Control direktivy z originu (například odstranit private nebo přidejte s-maxage), použijte Cache Response Rule , nikoli Workeru nebo pravidla Transform Rule.
Poznámky
- Pokud odstraníte hlavičku Last-Modified, Smart Edge Revalidation se vypne.
- Cache Response Rules ignorují
1xxstavové kódy odpovědi HTTP protože se považují za informativní odpovědi. - Cache Response Rules lze verzovat. Více informací najdete v Správa verzí dokumentaci, kde najdete další informace.