- Инструкции
- Опции раздела Кеширование
- Настройка и проверка параметров кеширования на CDN-серверах
- Настройка параметров кеширования для браузеров пользователей
- Игнорирование Set-Cookie при кешировании на CDN-сервере
- Игнорирование параметров запросов при кешировании на CDN-сервере
- Доставка контента из кеша при недоступности источника
- Редирект с другого источника на CDN
- Концепции
- Термины и сокращения
- Товарные знаки
- Обратиться в поддержку
Настройка и проверка параметров кеширования на CDN-серверах
Вы можете задать время хранения контента в кеше CDN-серверов. Когда время хранения кеша истекает, CDN-серверы обращаются к файлу на источнике, чтобы сравнить HTTP-заголовок Etag:
Если значения заголовка не совпадают, CDN кеширует новый файл на время, заданное для хранения контента в кеше CDN.
Если значения заголовка совпадают, CDN продолжает отдавать пользователям имеющийся в кеше файл в течение еще одного периода времени, заданного для хранения контента в кеше CDN.
Валидация источника гарантирует, что CDN-серверы выполняют проверку подлинности SSL-сертификата на сервере-источнике и проверку ответившего сервера на принадлежность клиенту при установке соединения.
Настройка кеширования на CDN-сервере
Опция кеширования задает время хранения контента в кеше CDN-серверов. Можно задать настройки на CDN или использовать настройки источника.
При выборе опции Задать настройки на CDN CDN-серверы запрашивают контент с источника и кешируют его на указанное время:
В настройках можно указать время жизни кеша для запросов с кодами ответа 200, 206, 301 и 302.
В расширенных настройках можно указать время хранения кеша для запросов с другими кодами ответа. Значение в поле Расширенные правила кеширования имеет больший приоритет, чем значение в поле Время жизни кеша.
При выборе опции Использовать настройки источника CDN-серверы ориентируются на заголовок Cache-Control и кешируют контент на указанное время. Опция применяется для запросов с кодами ответа 200, 201, 204, 206, 301, 302, 303, 304, 307 и 308.
Чтобы настроить кеширование на CDN-сервере:
В личном кабинете CDN перейдите в раздел CDN → CDN-ресурсы и нажмите на нужный CDN-ресурс.
В разделе Общие нажмите Кеширование на CDN.
В разделе Кеширование на CDN укажите нужные настройки.
Настройка кеширования на источнике
По умолчанию CDN наследует заголовки от источника. Заголовок должен содержать директивы public и max-age.
Добавьте заголовок Cache-Control в файл .htacess или nginx.conf на сервере.
Пример конфигурации Apache:
<ifModule mod_headers.c> <FilesMatch "\.(gif|ico)$"> Header set Cache-Control "max-age=31536000, public" </FilesMatch> <FilesMatch "\.(js)$"> Header set Cache-Control "max-age=31536000, public" </FilesMatch> </ifModule>
Пример конфигурации Nginx:
server { #... location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { add_header Cache-Control "max-age=88000, public"; } #... }
Проверка настроек кеширования
С помощью команды curl в terminal для MacOS или cmd для ОС Windows проверьте, какие заголовки кеширования используются при запросе файла, интегрированного с CDN.
Выполните команду curl-Ihttp://cdn.cloud.ru/js/intlTelInput/css/intlTelInput.css.
Используйте ссылку на файл, интегрированный с CDN.
В выводе команды обратите внимание на заголовки Cache-Control, Cache, X-Cached-Since и X-Node.
Описание заголовков приводится ниже.
Если контент не кешируется, проверьте настройки на источнике или обратитесь в техническую поддержку.
Заголовки
Ниже приводится список заголовков кеширования, которые поддерживаются CDN-серверами для проверки кеширования.
Cache-Control
Совместимые с CDN параметры HTTP-заголовка Cache-Control:
Cache-Control:Max-Age — задает время жизни файла в кеше в секундах.
Cache-Control:Public — кешировать файл сможет не только конечный клиент пользователя, но и прокси-серверы, и CDN-серверы.
Не совместимые с CDN параметры HTTP-заголовка Cache-Control:
Cache-Control:Private — директива, противоположная public. Файл не кешируется промежуточными прокси.
Cache-Control:No-cache — клиент должен делать запрос на сервер каждый раз при обращении к файлу.
Cache
Проверить источник отправки контента по значению заголовка Cache:
Cache:HIT — файл отдан из кеша CDN.
Cache:MISS — файл запрошен с источника.
X-Node
Проверить сервер CDN отправки контента по значению заголовка X-Node:
X-Node:[m9-up-e245] — файл отдан с сервера m9-up-e245.
X-Cached-Since
Узнать время кеширования контента на CDN-сервере по значению заголовка X-Cached-Since:
X-Cached-Since:2017-06-09T12:51:43+00:00 — время, с которого файл находится в кеше узла CDN.
- Настройка кеширования на CDN-сервере
- Настройка кеширования на источнике
- Проверка настроек кеширования
- Заголовки