etag
Директива 'etag' управляет генерацией заголовков ответа ETag в NGINX. — NGINX HTTP Core
Описание
Директива 'etag' в NGINX используется для включения или отключения генерации ETag в заголовках HTTP-ответов. ETags, или теги сущностей, применяются для проверки кэшированных ответов браузерами и прокси‑серверами, что позволяет эффективно управлять кэшем. Когда директива 'etag' установлена в 'on', NGINX будет генерировать ETags на основе содержимого ресурса, которые будут добавлены в заголовки ответа. Напротив, при установке в 'off' NGINX не будет включать ETags в ответ, что может быть желательным в случаях, когда управление ETag осуществляется в другом месте или когда дополнительная нагрузка на генерацию ETag не нужна. На практике включение ETags может улучшить проверку кэша, но не всегда оказывается полезным. Например, если ваш бэкенд‑сервис уже обрабатывает ETags, добавление их повторно в NGINX может привести к несоответствиям. Кроме того, ETags иногда могут раскрывать детали версий ресурсов, которые могут считаться конфиденциальными. Администраторам необходимо оценить стратегию кэширования приложения, чтобы определить, стоит ли эффективно использовать эту директиву. В целом использование директивы 'etag' должно учитывать конкретные механизмы кэширования и архитектуру приложения.
Пример конфига
http {
server {
location / {
etag off;
}
}
}Включение ETags может привести к несоответствиям, если backend также генерирует ETags.
Убедитесь, что вы учитываете последствия раскрытия версионирования ресурсов через ETags.