Аналізатор заголовків кешу

Аналізуйте HTTP-заголовки кешування для будь-якої URL-адреси. Перевіряйте Cache-Control, Expires, ETag, Last-Modified, Vary, Age та поширені сигнали кешу CDN, щоб зрозуміти поведінку браузера та спільного кешу. Включає трасування редіректів, перегляд сирих заголовків, фільтрацію, виявлення проблем та експорт у JSON/PDF.

Loading…

Про інструмент Аналізатор заголовків кешу

Вставте URL-адресу та миттєво зрозумійте, як вона кешується: директиви для браузера, спільне кешування CDN/проксі (s-maxage, surrogate controls), валідатори (ETag/Last-Modified) та шаблони ревалідації (stale-while-revalidate, stale-if-error). Використовуйте для налагодження продуктивності, запобігання випадкового кешування HTML та перевірки політик кешування статичних ресурсів.

Можливості

  • Аудит кешу за URL-адресою зі зрозумілою оцінкою та висновками (акцент на заголовках кешування/продуктивності).
  • Слідування за редіректами (до 10), щоб побачити, де дійсно застосовуються правила кешування.
  • Перегляд сирих заголовків для повної прозорості (що сервер/CDN насправді повернули).
  • Аналіз кешу виділяє: директиви Cache-Control, Expires/Pragma та конфлікти.
  • Перевірка валідаторів: виявлення ETag та Last-Modified (для умовних запитів та ревалідації).
  • Аналіз Vary для виявлення відсутньої або ризикованої поведінки (особливо для персоналізованого контенту).
  • Виявлення сигналів CDN: Age, Via, CF-Cache-Status, X-Cache, заголовки у стилі Fastly/Akamai/CloudFront.
  • Фільтри та режим «лише проблеми» для швидкої фокусування на вирішуваних питаннях.
  • Експорт результатів у звіти JSON та PDF (чудово підходить для аудитів та передачі клієнтам).
  • Спершу використання HEAD-запиту (з відкатом до GET) для мінімізації використання трафіку при збереженні сумісності.

🧭 Як використовувати for cache-headers-analyzer

1

Введіть URL-адресу

Вставте повну URL-адресу для аудиту (наприклад, [https://example.com/static/app.css](https://example.com/static/app.css)).

2

Оберіть поведінку запиту

Залиште «Спершу використовувати HEAD (відкат до GET)» увімкненим для швидких перевірок. Увімкніть «Слідувати за редіректами», якщо URL-адреса може перенаправляти (HTTP→HTTPS, www, CDN тощо).

3

Виберіть фокус аналізу

Використовуйте «Авто (рекомендовано)» для збалансованого огляду. Перейдіть на «Кешування браузера», «Кешування CDN / проксі» або «Кешування API», щоб пріоритезувати найбільш релевантні висновки для вашого ендпоінту.

4

Перегляньте висновки та категорії заголовків

Спершу перевірте оцінку/висновки, потім заглибіться в директиви кешу, валідатори (ETag/Last-Modified), аналіз Vary та сигнали CDN (Age, заголовки статусу кешу). Увімкніть «Показати сирі заголовки», якщо потрібна повна відповідь.

5

Експортуйте звіт

Завантажте звіт JSON для автоматизації або звіт PDF для аудитів та обміну з колегами/клієнтами.

Технічні характеристики

Модель запиту

Цей інструмент виконує перевірку заголовків URL-адреси з опціональним слідуванням за редіректами. Спочатку він намагається виконати запит HEAD (якщо увімкнено) і відкатується до GET за потреби.

НалаштуванняПоведінкаЗа замовчуванням
Спочатку HEAD (резервний GET)Використовує HEAD для швидкого отримання заголовків; переходить на GET, якщо HEAD не підтримується або недостатнійУвімкнено
Слідувати за перенаправленнямиСлідує ланцюжку перенаправлень для аналізу кінцевої поведінки кешуванняУвімкнено
Макс. перенаправленьОбмеження перенаправлень для запобігання нескінченним циклам10 (діапазон 0–20)
ТаймаутЛіміт часу очікування запиту15000 мс
User-AgentІдентифікує агента користувача запитуEncode64Bot/1.0 (+[https://encode64.com](https://encode64.com))
Приватні мережіБлокує доступ до діапазонів приватних мереж для безпекиВимкнено (приватні мережі не дозволені)

Аналізовані заголовки та сигнали

Аналізатор зосереджується на семантиці кешування (браузер та спільні кеші) та поширених сигналах CDN.

КатегоріяПриклади
Директиви кешуCache-Control, Expires, Pragma, Surrogate-Control, CDN-Cache-Control
ВалідаториETag, Last-Modified (використовуються для умовних запитів / ревалідації)
Поведінка спільного кешуs-maxage, stale-while-revalidate, stale-if-error (коли присутні в Cache-Control)
Поведінка VaryVary (варіації ключа кешу та безпека персоналізації)
Сигнали CDN/проксіAge, Via, CF-Cache-Status, X-Cache, X-Cache-Hits, Server-Timing та інші підказки від edge
Деякі заголовки CDN є специфічними для постачальника; їх наявність та значення можуть відрізнятися залежно від провайдера та конфігурації.

Евристики (що викликає попередження)

Висновки базуються на практичних евристиках кешування, щоб допомогти виявити відсутні, суперечливі або слабкі політики кешування.

ЕвристикаЩо перевіряє
Відсутній Cache-ControlПопереджає, коли відсутній Cache-Control
Конфліктуючі директивиПопереджає, коли директиви виглядають неузгодженими (наприклад, змішані наміри кешування)
Відсутні валідаториПопереджає, коли кешовані відповіді не мають ETag/Last-Modified
Слабкі валідаториПозначає шаблони слабких валідаторів, де це доречно
Ризик VaryПопереджає, коли Vary, здається, відсутній там, де ймовірно потрібна варіація
Невідповідність Pragma no-cacheПопереджає, коли з'являється Pragma: no-cache без відповідного Cache-Control

Класифікація (статичні vs HTML vs API)

Аналізатор може визначити намір типу контенту з шляху URL, щоб адаптувати рекомендації щодо кешування.

КласШаблони шляхів (приклади)
Статичний ресурс.css, .js, .png, .svg, .woff2 тощо
HTML.html, .htm
APIШляхи, що починаються з /api/ або закінчуються на .json
Якщо ваш URL не відповідає цим шаблонам, використовуйте "Фокус аналізатора", щоб керувати рекомендаціями.

Командний рядок

Використовуйте ці фрагменти CLI для перевірки заголовків кешу локально. Вони не замінюють висновки/оцінку цього інструменту, але допомагають швидко відтворити результати.

macOS / Linux

Отримати заголовки за допомогою запиту HEAD

curl -I [https://example.com/static/app.css](https://example.com/static/app.css)

Перевіряє Cache-Control, Expires, ETag, Last-Modified, Vary та сигнали CDN без завантаження тіла.

Слідувати за перенаправленнями та показати заголовки

curl -IL [https://example.com/](https://example.com/)

Показує ланцюжок перенаправлень, щоб ви могли перевірити, де змінюються директиви кешування.

Run

Windows (PowerShell)

Отримати заголовки відповіді

(Invoke-WebRequest -Uri [https://example.com/static/app.css](https://example.com/static/app.css) -Method Head).Headers

Виводить заголовки, включаючи Cache-Control, ETag, Last-Modified та заголовки CDN постачальника, якщо вони присутні.

Для статичних ресурсів з хешованими іменами файлів (app.abc123.css) краще використовувати довгострокове кешування з параметром immutable. Для HTML будьте обережні, щоб уникнути обслуговування застарілих персоналізованих сторінок.

Випадки використання

Аудит кешування статичних ресурсів (CSS/JS/зображення/шрифти)

Перевірте, чи ресурси з відбитками можна кешувати довгий час і чи їх можна ефективно перевіряти на актуальність за потреби.

  • Підтвердьте, що Cache-Control містить довгий max-age і (за потреби) immutable
  • Переконайтеся, що існують валідатори (ETag або Last-Modified) для безпечної перевірки актуальності
  • Перевірте індикатори попадання в кеш CDN (Age, CF-Cache-Status, X-Cache)
Cache-Control: public, max-age=31536000, immutable
ETag: "686897696a7c876b7e"
Vary: Accept-Encoding

Запобігання випадковому кешуванню HTML-сторінок

Виявіть випадки, коли HTML-сторінки занадто агресивно кешуються на рівні CDN або браузера, що може порушити процеси входу, персоналізацію та узгодженість рендерингу для SEO.

  • Виявіть надто дозвільний Cache-Control для HTML
  • Визначте відсутність Vary там, де вміст залежить від cookies, автентифікації або мови
  • Підтвердьте безпечні шаблони перевірки актуальності

Огляд кешування API-ендпоінтів

Зрозумійте, чи ввімкнено спільне кешування для відповідей API та чи ваш API можна безпечно кешувати.

  • Виявіть спільне кешування через s-maxage
  • Знайдіть стратегії stale-while-revalidate / stale-if-error
  • Позначте відсутність валідаторів, коли відповіді API можна кешувати

Налагодження поведінки CDN під час редіректів

Багато сайтів використовують редіректи (HTTP→HTTPS, apex→www, локальні редіректи). Цей інструмент допомагає переконатися, що політики кешування залишаються послідовними від першого кроку до фінальної відповіді.

  • Перевірте заголовки на кожному кроці та на фінальному URL
  • Виявіть зміни заголовків кешування, внесені правилами edge або переписуванням на оригіналі

❓ Frequently Asked Questions

Які заголовки аналізує цей інструмент для кешування?

Він зосереджується на семантиці та сигналах кешування: Cache-Control, Expires, Pragma, Age, ETag, Last-Modified, Vary, а також на загальних індикаторах CDN/проксі, таких як Via, CF-Cache-Status, X-Cache та пов'язані edge-заголовки.

Чому я бачу різні результати кешування між браузером і CDN?

Браузери дотримуються сквозних директив кешування (Cache-Control, Expires), тоді як CDN та проксі можуть застосовувати правила спільного кешу (s-maxage, Surrogate-Control) та edge-політики. Відповідь може бути кешованою на краю, але короткоживучею в браузері, або навпаки.

Для чого використовуються ETag та Last-Modified?

Це валідатори для умовних запитів. За допомогою ETag (If-None-Match) або Last-Modified (If-Modified-Since) клієнти та кеші можуть перевіряти актуальність ресурсів і отримувати легку відповідь 304 Not Modified, якщо вміст не змінився.

Чи варто кешувати HTML-сторінки довгий час?

Зазвичай ні. HTML часто змінюється і може бути персоналізованим. Агресивне кешування може обслуговувати застарілий або неправильний вміст. Краще використовувати коротке кешування з перевіркою актуальності та правильні правила Vary, коли вміст залежить від заголовків/cookies.

Що таке Vary і чому це важливо?

Vary повідомляє кешам, які заголовки запиту впливають на відповідь (наприклад, Accept-Encoding). Відсутність або неправильне вказання Vary може призвести до того, що кеші обслуговуватимуть неправильний варіант (стиснутий проти нестиснутого, мовні варіанти тощо).

Чи безпечно вставляти сюди URL?

Інструмент виконує запити на стороні сервера до наданого URL і блокує цілі в приватних мережах. Використовуйте публічні URL, яким довіряєте, і уникайте вставки секретів у рядку запиту URL.

Чи можна експортувати аналіз?

Так. Інструмент підтримує експорт звіту у форматі JSON та PDF, щоб ви могли ділитися результатами або додавати їх до аудитів продуктивності.

Pro Tips

Performance Tip

Якщо ваші ресурси мають відбиток (хеш у назві файлу), використовуйте довгий max-age + immutable для найкращої продуктивності при повторних відвідуваннях.

Security Tip

Якщо HTML персоналізований (куки/авторизація), уникайте кешування в спільних кешах, якщо ви не контролюєте повністю ключ кешу та поведінку Vary.

Performance Tip

Віддавайте перевагу валідаторам (ETag або Last-Modified) для ресурсів, що кешуються, щоб клієнти могли повторно перевіряти зі статусом 304 замість повторного завантаження.

Best Practice

Слідкуйте за конфліктними директивами, як-от no-store разом з довгим max-age; це зазвичай вказує на неправильну конфігурацію.

Best Practice

Під час налагодження редіректів порівнюйте заголовки кешування на кожному кроці; правила на краю можуть змінювати кешування між редіректами та кінцевою URL-адресою.

CI Tip

Експортуйте звіти JSON та зберігайте їх у артефактах CI/аудиту продуктивності, щоб відстежувати регресії з часом.

Additional Resources

Other Tools