Отправка AWS S3 download.txt файл

#amazon-web-services #amazon-s3 #amazon-cloudfront

#amazon-веб-сервисы #amazon-s3 #amazon-cloudfront

Вопрос:

Я настраиваю корзину S3 за CloudFront, которая предназначена для обслуживания статических ресурсов. Моя проблема заключается в том, что при выполнении a / в любом каталоге без имени файла браузер загрузит a download.txt с 0 байтами. У меня есть настройка корзины S3 для статического хостинга веб-сайтов, и она общедоступна, поэтому я могу получить доступ к своим ресурсам.

  1. https://s3-bucket.domain.com/path/to/file.jpg -> получить ресурс, работает
  2. https://s3-bucket.domain.com/path/to/file-bad-name -> Состояние ошибки 403, работает. Визуализация error.html из S3.
  3. https://s3-bucket.domain.com/path/to/ -> отправляет download.txt , не работает

Как мне настроить # 3, чтобы не отправлять download.txt и вместо этого отображать страницу с ошибкой?

Комментарии:

1. Одна вещь, которую я заметил, это то, что с # 3 код состояния равен 200, и я надеялся, что смогу установить пользовательский ответ об ошибке в CloudFront, аналогичный error.html странице. Но с его значением 200 не совсем уверен, что делать

Ответ №1:

Там происходит несколько вещей.

  1. Вам необходимо сопоставить его с новым источником, если вы хотите указать путь к объекту S3.
  2. Ваш шаблон не имеет приоритета в CloudFront.

Если вы исправите одно из вышеперечисленных действий или оба, оно должно работать так, как ожидалось.

Ответ №2:

У меня есть настройка корзины S3 для статического хостинга веб-сайтов, и она общедоступна

… но вы выбрали корзину из выпадающего списка при определении источника … да?

Необходимо настроить исходное доменное имя, чтобы использовать конечную точку размещения веб-сайта для корзины.

При настройке дистрибутива CloudFront в качестве источника введите конечную точку статического хостинга веб-сайтов Amazon S3 для своей корзины. Это значение отображается в консоли Amazon S3 на странице свойств в разделе Статический хостинг веб-сайтов. Например: http://bucket-name.s3-website-us-west-2.amazonaws.com

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html#concept_S3Origin_website

Если вы этого не сделаете и создали папки в корзине с помощью консоли S3, то в данный момент вы наблюдаете ожидаемое поведение, побочный эффект того, как консоль создает эти воображаемые папки.