← Cloudflare Cache / cache / advanced-configuration
Vary pro obrázky
Vary hlavička odpovědi HTTP říká Cloudflare, že origin server může poskytovat různé verze stejného prostředku v závislosti na hlavičkách požadavku. U obrázků to vašemu origin serveru umožňuje poskytovat prohlížečům, které je podporují, moderní formáty jako WebP nebo AVIF, zatímco ostatním nadále poskytuje JPEG nebo PNG.
Když Cloudflare obdrží odpověď s variantami obrázku, uloží každou variantu do mezipaměti zvlášť. Následné požadavky od prohlížečů se stejnou preferencí formátu obrázku se pak obsluhují přímo z mezipaměti bez kontaktování vašeho originu.
Vary pro obrázky funguje tak, že parsuje Accept hlavičku v každém požadavku, aby zjistil, jaký formát obrázku prohlížeč podporuje, a poté vrátí odpovídající variantu z mezipaměti.
Vary pro obrázky je dostupné pro zákazníky s plánem Pro, Business a Enterprise.
Dostupnost
| Free | Pro | Business | Enterprise | |
|---|---|---|---|---|
| Dostupnost | Ne | Ano | Ano | Ano |
Přípony souborů
Pro obrázky s níže uvedenými příponami souborů můžete použít vary, pokud origin server odesílá Vary: Accept hlavička odpovědi. Pokud origin server odešle Vary: Accept ale nastavenou variantu neposkytne, odpověď se neuloží do mezipaměti a zobrazí se BYPASS ve stavu mezipaměti v hlavičce odpovědi. Kromě toho musí být nakonfigurován seznam typů variant, které origin server poskytuje pro jednotlivé přípony, aby Cloudflare mohlo rozhodnout, kterou variantu doručit bez kontaktování origin serveru.
Přípony souborů s povoleným rozlišováním variant
- .avif
- .bmp
- .gif
- .jpg
- .jpeg
- .jp2
- .png
- .tif
- .tiff
- .webp
Zapnutí vary pro obrázky
Vary pro obrázky se aktivuje prostřednictvím Cloudflare API vytvořením variants rule. Následující příklady ukazují, jak podle stejného obrázku doručovat varianty JPEG, WebP a AVIF pro .jpeg a .jpg přípony.
Vytvoření pravidla pro varianty
Požadovaná oprávnění API tokenu
Alespoň jeden z následujících oprávnění tokenu je povinné:Zone Settings WriteZone Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cache/variants" \
--request PATCH \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"value": {
"jpeg": [
"image/webp",
"image/avif"
],
"jpg": [
"image/webp",
"image/avif"
]
}
}'Upravte tak, aby byly povoleny pouze varianty WebP
Požadovaná oprávnění API tokenu
Alespoň jeden z následujících oprávnění tokenu je povinné:Zone Settings WriteZone Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cache/variants" \
--request PATCH \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"value": {
"jpeg": [
"image/webp"
],
"jpg": [
"image/webp"
]
}
}'Odstranění pravidla
Požadovaná oprávnění API tokenu
Alespoň jeden z následujících oprávnění tokenu je povinné:Zone Settings WriteZone Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cache/variants" \
--request DELETE \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"Získat pravidlo
Požadovaná oprávnění API tokenu
Alespoň jeden z následujících oprávnění tokenu je povinné:Zone Settings WriteZone Settings ReadZone ReadZone Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/cache/variants" \
--request GET \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"Chcete-li se dozvědět více o čištění cache u variant obrázků, přečtěte si Vymazání variant obrázků.
Omezení
- Aby fungovala funkce Vary pro obrázky, musí URL adresy obrázků obsahovat příponu souboru v cestě, nikoli v query stringu. Například URL
https://example.com/image.jpgje kompatibilní, alehttps://example.com/index.php?file=image.jpgnení kompatibilní. - Váš origin server musí vrátit typ obrázku odpovídající příponě souboru v URL, pokud HTTP klient neodesílá žádnou
Accepthlavičku, neboAccept: */*hlavičku. V opačném případě uvidíteCF-Cache-Status: BYPASSv hlavičkách odpovědi HTTP.