HSTS: как браузер принудительно включает HTTPS
HSTS позволяет HTTPS-сайту сообщить браузеру, что к этому имени нужно обращаться только по HTTPS в течение max-age. Директива includeSubDomains расширяет политику на поддомены. Preload — отдельный механизм экосистемы браузеров, требующий осторожного планирования.
Что HSTS меняет в браузере
HSTS сообщает браузеру, что сайт нужно открывать только по HTTPS в течение указанного max-age. После получения политики браузер автоматически переводит последующие HTTP-запросы на HTTPS до отправки обычного незашифрованного запроса.
Как проверить HSTS
Проверьте заголовок Strict-Transport-Security в HTTPS-ответе и его max-age. При includeSubDomains убедитесь, что нужные поддомены действительно работают по HTTPS. Preload — отдельное решение, которое не стоит включать без готовности всего доменного дерева. Если политика уже сохранена браузером, удаление заголовка с сервера не отменяет её мгновенно. Для практической проверки используйте проверку сервера 2ip. Внешний HTTP-ответ сайта можно сверить через проверку сайта 2ip.
Осторожно с includeSubDomains и preload
Технические источники: RFC 6797.