ETag — идентификатор версии ресурса
ETag — HTTP-заголовок, обозначающий версию представления ресурса. Клиент может отправить его в If-None-Match, чтобы проверить, изменилось ли содержимое. Для подходящего условного GET неизменившийся ресурс может получить ответ 304 без повторной передачи тела.
Также встречается: ETag — идентификатор версии ресурса.
Для чего используется
Валидатор позволяет экономить передачу при повторной проверке ресурса. В отличие от Last-Modified, он не обязан быть привязан к времени файла. Но генерация корректного значения требует учёта всех зависимостей конкретного ответа.
Как SEO-специалист использует это в проекте
В SEO-проекте ETag проверяют при диагностике кеширования и условных запросов. Разработчик определяет, какие изменения влияют на представление: текст, цена, шаблон, язык. SEO-специалист проверяет, что после существенной правки клиент получает новый контент, а не старую версию.
- Получите ответ и сохраните ETag вместе с URL и условиями запроса.
- Повторите GET с If-None-Match, проверьте корректность условного ответа.
- Измените тестовое содержимое и убедитесь, что старая метка больше не подтверждает прежнюю версию.
Практический пример
Учебный протокол: версия товара A возвращает ETag "v1". Повтор с If-None-Match: "v1" даёт 304. После изменения цены сервер должен вернуть обновлённое представление и подходящий новый валидатор, а не подтверждать v1.
Иллюстрация подхода, не данные конкретного проекта.Ошибки и риски
ETag не является датой обновления и не гарантирует индексацию. Валидатор должен соответствовать именно возвращаемому представлению. Случайное значение на каждом запросе лишает проверку смысла, а неизменное после правок способно оставить устаревшие данные.
Считать 304 ошибкой; сравнивать метки разных языковых версий; генерировать новый ETag без изменения контента; забывать изменения шаблона и подключаемых данных.
Как проверить результат
Проверьте оба сценария: неизменившийся ответ и ответ после правки. Учитывайте варианты сжатия и работу CDN. Для проверки GET используйте именно GET: поведение HEAD само по себе не подтверждает корректность тела страницы.
Связанные термины
Продолжить по теме
- Инструкция: Как проверять результат работы сайта
- Практика: Бесплатный инструмент
- Внедрение: Обсудить состав работ