По умолчанию, мы наследуем все заголовки, заданные на источнике (читать больше о настройках наследования заголовков). Время хранения кеша на серверах CDN определяется HTTP-заголовком Cache-Control (если не задано иное в личном кабинете). Заголовок Cache-control должен содержать директивы public, max-age.
Настройка на источнике
Добавьте заголовок на вашем сервере в файл .htacess или nginx.conf.
Пример конфигурации Apache
<ifModule mod_headers.c> |
Пример конфигурации Nginx
server { |
Проверка настроек
Проверить заголовки заданные на источнике можно двумя способами:
С помощью команды cURL в терминале
curl -I http://cdn.example.ru/js/intlTelInput/css/intlTelInput.css
HTTP/1.1 200 OK
Server: nginx/1.13.1
Date: Fri, 09 Jun 2017 12:54:24 GMT
Content-Type: image/jpeg
Content-Length: 124024
Connection: keep-alive
X-Image-Generated: 29
X-Image-Meta: 1024x768
X-Image-Read: 71
Expires: Wed, 06 Dec 2017 12:51:43 GMT
Cache-Control: max-age=15552000
Access-Control-Allow-Origin: *
Last-Modified: Sun, 01 Jan 2017 12:00:00 GMT
Cache-Control: max-age=315360000, public, immutable — время кеширования файла в секундах
Cache: HIT - файл отдался из кеша CDN
X-Cached-Since: 2017-06-09T12:51:43+00:00 — время, с которого файл находится в кеше узла CDN
X-ID: m9-up-e245 — узел CDN, с которого был отдан файл
В браузере через инструменты разработчика
Откройте любой интернет браузер (например, Google Chrome) -> Откройте ваш сайт -> Нажмите кнопку F12 (откроется консоль разработчика) -> Выбери вкладку Сеть (Network) -> Обновите страницу (клавиша F5). Вы получите список всех файлов, которые были загружены с вашего сайта. Выберите один из файлов, на вкладке Headers справа вы увидите заголовки, которые настроены на вашем сервере.
Важные заголовки
HTTP-заголовок Cache-Control
- Cache-Control: Max-Age — задает время жизни файла в кеше в секундах.
- Cache-Control: Public — указывает на то, что кешировать файл сможет не только конечный клиент пользователя (браузер), но и прокси-серверы, CDN-серверы и т.д.
- Cache-Control: Private — директива, противоположная public — указывает на то, что файл не должен кешироваться промежуточными прокси. При использовании директивы контент не будет кешироваться. Не рекомендуется использовать.
- Cache-Control: No-cache — позволяет указать, что клиент должен делать запрос на сервер каждый раз при обращении к файлу. Не рекомендуется использовать.
HTTP-заголовок X-Cache
Заголовок показывает был ли файл отдан из CDN или запрошен с источника.
- X-Cache: HIT — файл отдался из кеша CDN.
- X-Cache: MISS — файл был запрошен с источника.
- X-Cached-Since: 2017-06-09T12:51:43+00:00 — время, с которого файл находится в кеше узла CDN