early_hints
Директива `early_hints` позволяет NGINX отправлять HTTP 103 Early Hints ответы до окончательного ответа. — NGINX HTTP Core
Описание
Директива `early_hints` в NGINX разработана для HTTP/3 и может отправлять предварительные HTTP 103 ответы, позволяющие серверу предоставлять клиенту подсказки до окончательного ответа. Это особенно полезно для предварительной загрузки ресурсов — указаний таких ресурсов, как таблицы стилей или скрипты, которые клиент может захотеть загрузить в ожидании рендеринга страницы. Директиву можно настроить глобально в блоке `http`, либо конкретно для контекстов `server` или `location`; она требует по крайней мере одного аргумента, который обычно включает заголовок 'link', указывающий ресурсы для предзагрузки. При использовании `early_hints` можно значительно ускорить загрузку веб-страниц за счёт предварительного информирования браузера о необходимых ресурсах. После настройки этой директивы ссылки, указанные в ответе, позволят браузерам начать загрузку этих ресурсов, пока они всё ещё ожидают окончательного ответа, что сокращает время, блокирующее отрисовку. Однако для эффективного использования этой функции приложение также должно быть спроектировано с учётом обработки таких ранних ответов, и следует проверить поддержку в браузерах, поскольку не все браузеры одинаково обрабатывают early hints.
Пример конфига
http {
server {
location / {
early_hints 'Link: ; rel=preload';
}
}
}Не все клиенты и браузеры корректно поддерживают ответы HTTP 103, что может приводить к непоследовательному поведению.
Ресурсы, на которые указывают подсказки, могут не загружаться, если в окончательном ответе указаны другие директивы кэширования или ограничения доступа.