Могу ли я установить переменную «Expires» в Amazon S3?

У меня есть тонна файлов в Amazon S3 (через Cloudfront), для которых я добавил заголовок Expires Mon, Jan 1 2024 11:11:11 GMT

Однако я недавно узнал, что установка заголовка Expires более одного года в будущем нарушает HTTP 1.1 RFC .

Итак, есть ли способ в S3 установить динамический Expires, который всегда один год с даты запроса?

7 голосов | спросил DisgruntledGoat 19 Jpm1000000pmThu, 19 Jan 2012 16:16:59 +040012 2012, 16:16:59

1 ответ


6
  

Итак, есть способ в S3 установить динамический Expires, который всегда один   год с даты запроса?

Не знаю, что я знаю, и я сомневаюсь, что специальная поддержка этого будет рассмотрена командой AWS:

Вероятно, вы знаете, что невозможно установить динамическое значение Expires: ... как таковое, потому что Единственное значение, действительное в Истекает заголовок - дата HTTP; что-нибудь еще, скорее всего, будет интерпретироваться как «в прошлом», так что представление является непонятным. (см., например, Управление свежестью с заголовком HTTP истекает в превосходном учебном пособии по кешированию ).

Однако эта слабость заголовка HTTP 1.0 Expires: ... была реализована и исправлена ​​в HTTP 1.1, который представил новую класс заголовков, заголовки ответов Cache-Control, чтобы дать веб-издателям больше контроля над своим контентом и устранить ограничения Expires. (см. HTTP-заголовки Cache-Control ).

В отношении вашего варианта использования (и вообще) я настоятельно рекомендую использовать заголовок Cache-Control: max-age=... в течение одного года в в будущем и только добавьте Expires: ... для обратной совместимости, если есть определенная причина для этого. В этом случае, однако, в соответствии с вашим вопросом, вам действительно придется корректировать значение время от времени, чтобы избежать нарушения HTTP 1.1 RFC, например. через скрипт, ориентированный на S3 API .

ответил Steffen Opel 19 Jpm1000000pmThu, 19 Jan 2012 17:11:36 +040012 2012, 17:11:36

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132