Построитель заголовков CDN Cache-Control
Создайте заголовки Cache-Control для сжатых ресурсов — правильно задайте max-age, s-maxage, stale- while-revalidate и Vary: Accept-Encoding для доставки CDN. Выберите один из 5 предустановленных типов ресурсов (статические ресурсы с хешированием контента, HTML-страницы, общедоступные API, частные API) или настройте все директивы вручную. Построитель заголовков управления кэшем cdn генерирует готовые к вставке фрагменты конфигурации для Nginx, Apache, Cloudflare, AWS CloudFront, Fastly и Vercel — с предупреждениями в реальном времени о противоречивых комбинациях директив. Вся генерация запускается в вашем браузере — регистрация не требуется.
CDN Cache-Control Header Builder
Asset Type Preset
Cache Durations
Cache Directives
Vary Headers
Generated Headers
Cache-Control
Cache-Control: max-age=31536000, s-maxage=31536000, stale-if-error=86400, immutable
Vary
Vary: Accept-Encoding
Server / CDN Config Snippet
Nginx snippet
# Nginx - add to your server {} or location {} block
add_header Cache-Control "max-age=31536000, s-maxage=31536000, stale-if-error=86400, immutable";
add_header Vary "Accept-Encoding";
# For compressed assets, also add:
add_header Content-Encoding gzip;Directive Reference
max-age - browser cache TTL in seconds
s-maxage - CDN/shared cache TTL (overrides max-age for CDNs)
stale-while-revalidate - serve stale while fetching fresh in background
stale-if-error - serve stale if origin returns 5xx error
immutable - skip revalidation during max-age (content-hashed assets only)
Vary: Accept-Encoding - required for CDNs to cache compressed variants separately
Зачем использовать наш построитель заголовков CDN Cache-Control?
- Мгновенная генерация заголовков Cache-Control: мгновенно создавайте правильные заголовки Cache-Control для сжатых ресурсов — построитель заголовков cdn Cache-Control создает готовые к вставке фрагменты конфигурации сервера для Nginx, Apache, Cloudflare, CloudFront, Fastly и Vercel с предупреждениями о неправильной конфигурации в реальном времени.
- Secure CDN Cache-Control Header Builder Online: создание всех заголовков полностью выполняется в вашем браузере. Построитель заголовков управления кэшем cdn никогда не отправляет вашу конфигурацию ни на один сервер — это безопасно для создания заголовков для внутренних API, аутентифицированных конечных точек и собственных конфигураций CDN.
- 5 предустановок типов ресурсов + полностью пользовательский режим: выберите один из 5 проверенных в бою предустановок — статические активы с хешированием контента, активы с версиями, HTML-страницы, общедоступные API и частные API — или настройте каждую директиву вручную. Построитель заголовка управления кэшем cdn правильно устанавливает max-age, s-maxage, stale- while-revalidate и Vary для каждого варианта использования.
- 100% бесплатно навсегда: конструктор заголовков управления кэшем cdn абсолютно бесплатен, не требует регистрации, премиум-уровня, ограничений и рекламы. Создавайте заголовки Cache-Control для неограниченного количества ресурсов и конфигураций CDN бесплатно и навсегда.
Распространенные случаи использования построителя заголовков CDN Cache-Control
- Кэширование статических активов с хешированием содержимого: создавайте заголовки Cache-Control для файлов JS, CSS и изображений с хэшами контента в их именах — построитель заголовков cdn Cache-Control генерирует правильную комбинацию max-age=31536000, неизменяемую, Vary: Accept-Encoding для постоянного кэширования CDN с мгновенным уничтожением кеша при развертывании.
- Конфигурация кэша страниц HTML: настройте Cache-Control для HTML-документов, которым требуется короткое кэширование CDN с возможностью повторной проверки устаревших данных для быстрой доставки. Построитель заголовков управления кэшем cdn устанавливает отсутствие кэширования с помощью s-maxage и устаревшего при повторной проверке, поэтому CDN мгновенно обслуживают устаревший HTML, одновременно получая свежий контент в фоновом режиме.
- Кэширование ответов общедоступного API: создание заголовков Cache-Control для конечных точек общедоступного API JSON, которые получают выгоду от кэширования CDN. Построитель заголовка cdn Cache-Control устанавливает правильную комбинацию s-maxage, stale- while-revalidate и Vary: Accept-Encoding, поэтому CDN кэширует сжатые и несжатые ответы отдельно.
- Заголовки частных/аутентифицированных конечных точек: создавайте заголовки Cache-Control без хранения для аутентифицированных конечных точек API и пользовательских ответов. Построитель заголовков управления кэшем cdn гарантирует, что частные ответы никогда не будут кэшироваться CDN или общими кэшами, что предотвращает передачу конфиденциальных данных не тому пользователю.
- Конфигурация с несколькими CDN: создавайте фрагменты конфигурации сервера для Nginx, Apache, Cloudflare, AWS CloudFront, Fastly и Vercel из единого набора параметров. Построитель заголовка cdn Cache-Control устраняет необходимость вручную переводить семантику Cache-Control в формат конфигурации каждого CDN.
- Планирование стратегии «устаревание во время повторной проверки». Настройте длительность «устаревания во время повторной проверки» и «устаревания в случае ошибки» для стратегий кэширования высокой доступности. Построитель заголовка cdn Cache-Control показывает, как именно эти директивы взаимодействуют с max-age и s-maxage — с предупреждениями о противоречивых комбинациях директив.
Что такое построитель заголовков CDN Cache-Control?
Построитель заголовков управления кешем CDN генерирует правильные заголовки ответов Cache-Control и Vary HTTP для ресурсов, обслуживаемых через CDN, что обеспечивает правильность кэширования ответов браузерами и пограничными узлами CDN. Для сжатых ресурсов (GZIP или Brotli) заголовок Vary: Accept-Encoding имеет решающее значение — без него CDN может предоставить сжатый ответ клиенту, который не поддерживает сжатие, что приведет к ошибке распаковки. Построитель заголовка управления кешем cdn правильно устанавливает max-age (TTL браузера), s-maxage (CDN TTL), устаревшее время повторной проверки (фоновое обновление) и устаревшую ошибку (резервный вариант ошибки) для каждого типа ресурса.
Как работает наш построитель заголовков CDN Cache-Control
- 1. Выберите набор настроек типа ресурса. Выберите один из 5 наборов настроек: статические ресурсы с хешированием контента, активы с версиями, HTML-страницы, общедоступные API или частные API. Каждая предустановка применяет правильную комбинацию директив для данного варианта использования. Переключитесь на «Пользовательский», чтобы настроить все параметры вручную.
- 2. Настройте продолжительность и директивы: точно настройте максимальный возраст, s-макс, устаревший при повторной проверке и устаревший при ошибке с помощью средств выбора длительности. Переключить директивы кэша (без хранения, без кэша, обязательная повторная проверка, неизменяемые) и заголовки Vary. Построитель заголовков cdn Cache-Control мгновенно обновляет сгенерированные заголовки и отображает предупреждения о противоречивых комбинациях.
- 3. Скопируйте заголовок и фрагмент сервера. Сгенерированные значения заголовков Cache-Control и Vary отображаются с помощью кнопок копирования одним щелчком мыши. Выберите свою CDN или сервер (Nginx, Apache, Cloudflare, CloudFront, Fastly, Vercel), чтобы получить готовый к вставке фрагмент конфигурации.
Ключевые директивы управления кэшем для сжатых ресурсов
- Варьируется: Accept-Encoding: самый важный заголовок для сжатых ресурсов — сообщает CDN о необходимости хранить отдельные записи кэша для сжатых (gzip/brotli) и несжатых ответов. Без этого CDN может кэшировать ответ gzip и отправлять его клиенту, который не отправил заголовок Accept-Encoding, что приведет к сбою загрузки.
- s-maxage против max-age: s-maxage переопределяет max-age для общих кешей (CDN, прокси), оставляя TTL браузера неизменным. Используйте s-maxage, чтобы установить более длительный TTL CDN, чем TTL браузера — например, max-age=0, s-maxage=86400 означает, что браузеры всегда выполняют повторную проверку, но CDN кэшируются в течение 24 часов.
- stale- while-revalidate: позволяет CDN немедленно обслуживать устаревший ответ, одновременно получая новый в фоновом режиме. Это устраняет резкий скачок задержки по истечении срока действия кэшированного ответа — пользователи всегда получают быстрый ответ, а кеш обновляется асинхронно.
- неизменяемый: сообщает браузерам не проверять ответ в течение периода максимального срока действия, даже при явной перезагрузке. Используйте только с именами файлов, хешированными по содержимому (например, app.a1b2c3d4.js) — если содержимое изменится, имя файла должно измениться, чтобы очистить кеш.
Распространенные ошибки управления кэшем, которых следует избегать
Самая распространенная ошибка — установка Cache-Control: max-age=31536000 без Vary: Accept-Encoding для сжатых ресурсов — CDN будет кэшировать только один вариант и может обслуживать неправильный. Другая распространенная ошибка — использование неизменяемых файлов без имен файлов, хешированных по содержимому: если файл изменяется, но URL-адрес остается прежним, браузеры будут обслуживать устаревшую кэшированную версию на неопределенный срок. Построитель заголовка cdn Cache-Control обнаруживает эти проблемы и отображает предупреждения в режиме реального времени. Всегда проверяйте заголовки Cache-Control с помощью Curl -I и проверяйте поведение CDN с помощью инспектора кэша CDN перед развертыванием в рабочей среде.
Часто задаваемые вопросы
Построитель заголовков управления кэшем cdn генерирует правильные заголовки ответов Cache-Control и Vary HTTP для ресурсов, обслуживаемых через CDN. Наш бесплатный онлайн-конструктор заголовков управления кэшем cdn создает готовые к вставке фрагменты конфигурации сервера для Nginx, Apache, Cloudflare, CloudFront, Fastly и Vercel. Вся генерация запускается в вашем браузере без необходимости регистрации.
Без Vary: Accept-Encoding CDN может кэшировать ответ, сжатый с помощью gzip, и отправлять его клиенту, который не отправил заголовок Accept-Encoding, что приводит к сбою загрузки. Заголовок Vary сообщает CDN о необходимости хранить отдельные записи кэша для сжатых и несжатых вариантов одного и того же URL-адреса.
Да. Вся генерация заголовков полностью выполняется в вашем браузере с использованием JavaScript. Никакие данные конфигурации не отправляются на какой-либо сервер, не сохраняются удаленно и не передаются по сети.
Да – 100% бесплатно, навсегда. Без регистрации, без учетной записи, без премиум-уровня, без ограничений и без рекламы.
max-age устанавливает TTL кэша браузера. s-maxage переопределяет max-age для общих кешей (CDN, прокси), оставляя при этом TTL браузера неизменным. Используйте s-maxage, чтобы установить более длительный TTL CDN, чем TTL браузера — например, max-age=0, s-maxage=86400 означает, что браузеры всегда выполняют повторную проверку, но CDN кэшируются в течение 24 часов.
Используйте неизменяемый только с именами файлов, хешированными по содержимому (например, app.a1b2c3d4.js) и max-age=31536000. Он сообщает браузерам не выполнять повторную проверку во время максимального возраста, даже при явной перезагрузке. Никогда не используйте immutable с нехешированными URL-адресами — если содержимое изменится, имя файла должно измениться, чтобы очистить кеш.
stale- while-revalidate позволяет CDN немедленно обслуживать устаревший ответ, одновременно получая новый в фоновом режиме. Это устраняет скачок задержки по истечении срока действия кэшированного ответа. Используйте его для HTML-страниц и ответов API, где допустим слегка устаревший ответ.
Используйте no-store для действительно конфиденциальных данных — это предотвращает любое кэширование, в том числе в браузере. Используйте no-cache для ответов, которые можно кэшировать, но всегда необходимо повторно проверять. Для большинства частных API вариант «без хранения» является более безопасным выбором.
Проверьте с помощью Curl: Curl -I https://yoursite.com/assets/app.js. Найдите в ответе заголовки Cache-Control и Vary. Чтобы узнать о поведении CDN, проверьте заголовок состояния кэша вашей CDN (Cloudflare: CF-Cache-Status, CloudFront: X-Cache). Всегда проверяйте как сжатые, так и несжатые запросы, чтобы убедиться, что Vary: Accept-Encoding работает.