Калькулятор TTL / max-age HTTP-кэша

ДанныеРазработчик
Реклама · УДАЛИТЬ?

Область кэширования

Поведение кэширования

Время жизни (TTL)

Как долго браузер может кэшировать ответ
Как долго общие кэши/CDN могут хранить ответ
Отдавать устаревший ответ во время получения свежего ответа в фоновом режиме
Отдавать устаревший ответ, если источник возвращает ошибку

Специфичные заголовки CDN

Реклама · УДАЛИТЬ?

Гид

Калькулятор TTL / max-age HTTP-кэша

Визуально создавайте HTTP-заголовки Cache-Control. Выберите предустановку стратегии кэширования или настройте отдельные директивы — max-age, s-maxage, stale-while-revalidate, immutable и другие. Получите готовую строку заголовка с понятными объяснениями и эквивалентами для конкретных CDN.

Как использовать

Выберите предустановку стратегии (Статические ресурсы, HTML-страницы, Ответы API, Кэш CDN Edge), чтобы автоматически заполнить распространенные конфигурации, или используйте режим «Пользовательский», чтобы создать заголовок с нуля. Переключайте директивы, устанавливайте временные значения для max-age и s-maxage, и полная строка заголовка Cache-Control будет генерироваться мгновенно. Скопируйте ее непосредственно в конфигурацию вашего сервера, .htaccess или код приложения.

Возможности

  • Предустановки стратегий – Предварительно настроенные параметры для распространенных сценариев: статические ресурсы (1 год, immutable), HTML-страницы (проверка при каждом запросе), ответы API (private, no-cache) и кэширование CDN edge.
  • Все директивы Cache-Control – Настройте public, private, no-cache, no-store, max-age, s-maxage, stale-while-revalidate, stale-if-error, must-revalidate, proxy-revalidate, no-transform и immutable.
  • Обнаружение конфликтов – Предупреждает о выборе противоречивых директив, таких как no-store с max-age или public с private одновременно.
  • Читаемый формат времени – Автоматически преобразует секунды в удобочитаемый формат (86400 секунд = 1 день) рядом с каждым полем ввода времени.
  • Объяснение заголовка – Отображает объяснение простыми словами того, что фактически делает ваша настроенная строка заголовка.
  • Специфичные заголовки CDN – Генерирует эквивалентные заголовки для Cloudflare (CDN-Cache-Control), Varnish/Fastly (Surrogate-Control).
  • Генерация в реальном времени – Строка заголовка мгновенно обновляется при переключении любой директивы или изменении любого значения.

Когда использовать этот инструмент

Используйте этот инструмент при настройке кэширования для веб-приложений, настройке политик кэширования CDN, оптимизации доставки статических ресурсов или отладке поведения кэша. Он необходим веб-разработчикам, DevOps-инженерам и всем, кто работает с HTTP-кэшированием и нуждается в создании правильных заголовков Cache-Control без необходимости запоминать спецификацию RFC 7234.

Реклама · УДАЛИТЬ?

Часто задаваемые вопросы

  1. Что такое заголовок Cache-Control?

    Cache-Control — это HTTP-заголовок, который указывает браузерам и CDN, как кэшировать ответ. Он контролирует, может ли ответ быть закэширован (public против private), как долго он может быть закэширован (max-age в секундах), должен ли он проверяться перед использованием (no-cache, must-revalidate) и должен ли он вообще храниться (no-store). Правильная настройка Cache-Control — одна из самых эффективных оптимизаций производительности веб-сайтов.

  2. Какова разница между max-age и s-maxage?

    max-age устанавливает время жизни кэша для всех кэшей — как кэшей браузера, так и общих (CDN/прокси) кэшей. s-maxage (shared max-age) переопределяет max-age специально для общих кэшей, таких как CDN и прокси-серверы, в то время как браузеры по-прежнему используют max-age. Это позволяет вам устанавливать разную продолжительность кэширования: например, max-age=60 (браузер кэширует в течение 1 минуты) с s-maxage=86400 (CDN кэширует в течение 1 дня). Это распространенный шаблон для контента, который иногда меняется.

  3. Что делает stale-while-revalidate?

    stale-while-revalidate позволяет кэшам отдавать устаревший (просроченный) ответ, одновременно загружая новый ответ в фоновом режиме. Например, stale-while-revalidate=86400 означает, что кэш может отдавать устаревший ответ до 1 дня, пока он асинхронно перепроверяет его. Это значительно улучшает воспринимаемую производительность, поскольку пользователи никогда не ждут проверки — они мгновенно получают (слегка устаревший) ответ, пока кэш сам обновляется для следующего запроса.

  4. Какова разница между no-cache и no-store?

    no-cache НЕ означает «не кэшировать». Это означает «кэшировать ответ, но всегда проверять его с сервером перед использованием». Браузер сохраняет ответ, но перед его отдачей проверяет его с сервером (с помощью ETag или Last-Modified) — если контент не изменился, сервер отвечает 304 Not Modified, и используется закэшированная версия. no-store означает «не кэшировать вообще» — ответ никогда не должен храниться ни одним кэшем. Используйте no-cache для контента, который может меняться, но выигрывает от условных запросов; используйте no-store для конфиденциальных данных, которые никогда не должны сохраняться.

Хотите убрать рекламу? Откажитесь от рекламы сегодня

Установите наши расширения

Добавьте инструменты ввода-вывода в свой любимый браузер для мгновенного доступа и более быстрого поиска

в Расширение Chrome в Расширение края в Расширение Firefox в Расширение Opera

Табло результатов прибыло!

Табло результатов — это интересный способ следить за вашими играми, все данные хранятся в вашем браузере. Скоро появятся новые функции!

Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?
Реклама · УДАЛИТЬ?

новости с техническими моментами

Примите участие

Помогите нам продолжать предоставлять ценные бесплатные инструменты

Купи мне кофе
Реклама · УДАЛИТЬ?