HSTS просить попереднього завантаження, але не виконує перевіреної вимоги

У звітіHSTS preload declared but preload requirements unmet

hsts_preload_preconditions_unmet · Потребує перегляду

Коротка відповідь

Це з’являється, коли ваш заголовок Strict-Transport-Security просить попереднього завантаження, а одну з вимог, які ми перевіряємо, не виконано: max-age в рік, includeSubDomains і перше переспрямування з http:// на HTTPS на тому самому хості, з відповіддю, що містить заголовок. Список попереднього завантаження приймає лише сайти, які виконують усі його вимоги. Виконайте їх або приберіть preload, якщо не збираєтеся до нього приєднуватися.

Серйозність: Низька. Перегляньте неузгоджену декларацію preload. Невдале переспрямування з HTTP на HTTPS однаково може залишити доступ через звичайний HTTP, а сайт списку попереднього завантаження загалом не рекомендує приєднуватися до списку.

Чому це важливо

Сайт списку попереднього завантаження HSTS встановлює вимоги до подання, зокрема max-age щонайменше 31536000 секунд і директиви includeSubDomains та preload. Він застерігає, що включення нелегко скасувати, і каже, що хоча HSTS рекомендований, попереднє завантаження — ні.

Що зробити

  1. Перегляньте знахідку: у ній показано, яка з чотирьох перевірок не пройшла і як переспрямувала адреса з http:// для хоста.
  2. Якщо ви збираєтеся в список попереднього завантаження, виправте те, що не пройшло: підвищте max-age, додайте includeSubDomains або зробіть так, щоб http:// переспрямовував спершу на HTTPS на тому самому хості, із заголовком у цій відповіді HTTPS.
  3. Якщо не збираєтеся, приберіть preload із заголовка.

Коли залишити як є: якщо ви додали preload свідомо й ще працюєте над вимогами, можна залишити як є, доки їх не виконано.

Що ми читаємо

Ми читаємо перший заголовок Strict-Transport-Security в кінцевій відповіді кожної просканованої сторінки HTTPS, із власним user agent, і переспрямування, які ми пройшли з http:// для вашого домену та його адреси з www..

Адреса фіксується, коли заголовок сторінки містить preload і одна з чотирьох перевірок не проходить: max-age щонайменше 31536000, наявний includeSubDomains, перша відповідь на http:// для хоста є переспрямуванням на HTTPS на тому самому хості, і ця відповідь HTTPS надсилає заголовок, хоч би з яким значенням. Для хоста, відмінного від вашого домену чи його адреси з www., переспрямування не читається, тож останні дві перевірки зробити неможливо.

Приклад і докази

Ілюстративний приклад — один заголовок, а не реальний аудит.

https://bakery.example/ надсилає:

Strict-Transport-Security: max-age=31536000; preload

Заголовок просить попереднього завантаження, але не має includeSubDomains, тому адреса фіксується з цією перевіркою як непройденою.

Strict-Transport-Security: max-age=31536000; includeSubDomains; preload

Можливе виправлення, щойно кожен субдомен працює через HTTPS: додайте includeSubDomains. Якщо ви не хочете приєднуватися до списку, натомість приберіть preload.

Підтвердити й перевірити знову

Перевірте самі: введіть свій домен на hstspreload.org: він перелічує кожну вимогу, яку вважає невиконаною, зокрема ті, яких ця перевірка не читає.

Повторна перевірка: Повний аудит — запустіть новий повний аудит. Повне охоплення перевірки без жодної непройденої чи невідомої перевіреної умови попереднього завантаження може зняти попередню знахідку. Видалення preload може зробити це правило незастосовним і закрити попередню знахідку, але не доводить, що сайт виконує вимоги попереднього завантаження.

Обмеження та джерела

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

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

Джерела

  • hstspreload.org, Подання до списку попереднього завантаження HSTS — перелічує вимоги до подання, зокрема max-age щонайменше 31536000 секунд і директиви includeSubDomains та preload, і каже, що хоча HSTS рекомендований, попереднє завантаження — ні. Перевірено 28 вересня 2026.

Редакційна перевірка: 29 вересня 2026