Цитата |
---|
akazakov написал: set $webp_suffix ""; if ($http_accept ~* "webp") { set $webp_suffix ".webp"; }
location ~* \.(jpeg|jpg|png)$ { add_header Vary "Accept-Encoding"; try_files $uri$webp_suffix $uri $uri/ =404; expires -1; } |
Чтоб заработал CDN нужно поменять как выделил жирным. Проверил на CloudFlare - просто перестает кешировать картинки. Каждому браузеру отдает каждый раз не из кеша CDN, а с nginx сервера. Но в Cloudflare можно выставить для кеширования Respect Existing Headers. Тогда он будет учитывать заданные настройки кеширования для объектов. Как там в CDN (учитывает или перезаписывает) не в курсе. Кто может - проверьте. Пропишите, вычистите кеш на CDN. Зайдите на какую-то внутреннюю страницу сайта сначала с Chrome, потом на эту же с Safari. Хочу отметить, что картинки кешироваться на CDN не будут при это. Но этот костыль позволит оставить CDN как услугу в целом для всего остального контента.
Причем PageSpeed Insights считает что кеш прописан (тут речь о кеше в браузере). Видимо срабатывает директива ниже
я там изменил
location ~* \.(css|js|gif|png|jpg|jpeg|ico|ogg|ttf|woff|eot|otf)$
на
location ~* \.(css|js|
webp|gif|png|jpg|jpeg|ico|ogg|ttf|woff|eot|otf)$