AWS S3 отправляет файл download.txt - PullRequest
1 голос
/ 12 апреля 2019

Я устанавливаю контейнер S3 за CloudFront, который предназначен для обслуживания статических ресурсов.Моя проблема заключается в том, что при выполнении / в любом каталоге без имени файла браузер загружает 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 и визуализироватьвместо страницы ошибки?

Ответы [ 2 ]

0 голосов
/ 13 апреля 2019

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

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

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

При настройке дистрибутива 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, то в настоящее время вы наблюдаете ожидаемое поведение, побочный эффект от того, как консоль создает эти воображаемые папки.

0 голосов
/ 12 апреля 2019

Там мало что происходит.

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

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

...