AWS CLI - Почему мои файлы S3 bucket выглядят как зашифрованные? - PullRequest
0 голосов
/ 10 февраля 2020

Я использую S3 для размещения веб-сайта stati c, с довольно стандартной конфигурацией - корзина с кучей файлов HTML / JS / CSS, доступ для чтения publi c и Stati c Хостинг веб-сайтов включен.

Доступ к веб-сайту через URL или конечную точку S3 работает нормально:

Однако при попытке загрузить файлы из корзины с помощью команды, подобной aws s3 sync s3://www.tearelaw.co.nz ./, файлы выглядят как gibberi sh. Открытие файлов в формате UTF-8 дает мне несколько случайных символов , таких как , что приводит меня к мысли, что они могут быть зашифрованы (или просто повреждены при передаче?).

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

До сих пор я пробовал:

  • Открытие файлов в различных форматах (UTF-8, UTF- 16 LE / BE, et c).
  • Проверка того, что шифрование по умолчанию отключено в корзине.
  • Проверка того, что шифрование на уровне объекта отключено в файле index.html.
  • Загрузка с использованием различных вариантов --region.

Я использую последнюю версию CLI AWS (aws-cli/1.17.13 Python/3.6.0 Windows/10 botocore/1.14.13 ), на Windows 10 P C.

Есть ли какая-то опция шифрования на уровне сегмента, которую я пропускаю?

Любая помощь будет очень признательна!

1 Ответ

1 голос
/ 10 февраля 2020

Похоже, что ваши файлы предоставляются в формате gzip . Это часто встречается на веб-сайтах, чтобы минимизировать требования к пропускной способности. Веб-браузер знает, как распаковать содержимое.

Я сделал следующее на Ma c (извините, я знаю, что вы используете Windows):

aws s3 cp s3://www.tearelaw.co.nz/static/img/logo.min.png .
mv logo.min.png logo.min.png.gz
gunzip logo.min.png

logo.min.png файл может быть открыт как обычный png.

То же самое относится и к самим веб-страницам:

aws s3 cp s3://www.tearelaw.co.nz/practice-areas/index.html .
mv index.html index.gz
gunzip index

Файл index затем можно было прочитать как текстовый файл, содержащий HTML.

Почему именно в этом формате? Ну, кто бы ни поместил файлы в корзину Amazon S3, вероятно, сделал это намеренно, или использовал утилиту, которая использовала gzip для их сжатия.

...