Синхронизировать объекты в S3 с истекшим сроком действия и заголовками управления кэшем, используя CLI? - PullRequest
0 голосов
/ 17 июня 2019

Я пытаюсь синхронизировать некоторые объекты с S3 и установить заголовки Expires и Cache-Control, но я на этом сошёл с ума.Ничто не похоже на работу.Вот моя последняя попытка:

aws s3 sync . s3://my-bucket \
    --expires "2020-06-16T13:27:40Z" \
    --cache-control "max-age=315360000, public, s-maxage=31536000, max-age=31536000, immutable" \
    --exclude "*" \
    --metadata-directive REPLACE \
    --include "bundles"

Результат: нет заголовка Expires, нет заголовка Cache-Control.Я посмотрел в консоли (только один метаданные, Content-Type), я использовал get-object, чтобы посмотреть на него, и я посмотрел на ответ с curl.Я не совсем уверен насчет metadata-directive - он не упоминается под --expires в документации, но документы для опции директивы указывают, что должен быть должен быть установлен, чтобы другие работали.Какое сумасшедшее заклинание я должен вызвать, чтобы эти заголовки были установлены на моих объектах?

1 Ответ

0 голосов
/ 25 июня 2019

Это в конечном итоге оказалось PEBCAC.Это действительно работает, когда работает в изоляции.Я запустил его как часть многоэтапного процесса, который сначала синхронизировал некоторые файлы, кроме тех, для которых я хотел использовать заголовки, а затем синхронизировал файлы с заголовками.Проблема заключалась в том, что в первой синхронизации я проверил шаблон exclude, поэтому в основном все файлы уже были синхронизированы, и поэтому синхронизация с установкой заголовка ничего не сделала.Ах, разве ты не прекрасный разработчик?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...