Я использую Amazon Cloudfront CDN для статических ресурсов. Можетфронт выдает Etag для каждого GET-запроса. Я установил метаданные для всех своих активов с определенной информацией Cache-Control, что (как я понимаю) делает Etag излишним. Я проверяю производительность загрузки своего сайта на WebPageTest.org, и он звонит мне на эти ненужные Etags. Если они на самом деле не нужны, кто-нибудь знает способ подавить их испускание?
Можно ли запретить выпуск заголовка Etag в AWS Cloudfront?
Ответы (2)
Если вы используете исходный сервер и отключили ETag на исходном сервере, CloudFront не добавит ETag в свои заголовки. Я проверил это, отключив ETag на исходном сервере.
Если Cloudfront предоставляет согласованные Etags независимо от того, с какого узла вы загружаете ресурс, это должно свести к минимуму проблему. Я проверил это, выполнив следующие действия:
При разрешении Cloudfront из двух разных мест я убедился, что CNAME разрешаются в совершенно разные наборы IP-адресов. Первый сервер разрешается в набор из 8 IP-адресов в центре обработки данных Amazon LAX (lax1.cloudfront.net), второй сервер разрешается в 8 IP-адресов в центре обработки данных Amazon SFO (sfo4.cloudfront.net).
Я выбрал объект в нашем дистрибутиве Cloudfront и выполнил «wget --server-response» для каждого местоположения, а затем сравнил результаты. Я сделал это для каждого центра обработки данных несколько раз, чтобы получить ответы с разных IP-адресов в каждом центре обработки данных.
В результате Etags были одинаковыми, независимо от того, в какой центр обработки данных я попал, и какой IP-адрес ответил из этого центра обработки данных.
Я заметил, что следующие заголовки DID различаются между серверами x-amz-id-2 x-amz-request-id Age X-Amz-Cf-Id Via
Надеюсь это поможет,
Дэйвид
[отредактировано - удалены комментарии к eTags на основе исправления ниже]