Есть ли способ использовать index.html с содержимым, размещенным на S3? - PullRequest
31 голосов
/ 26 августа 2008

Есть ли способ сделать S3 по умолчанию страницей index.html? Например: список объектов моего ведра:

/index.html
/favicon.ico
/images/logo.gif

Звонок на www.example.com / index.html прекрасно работает! Но если бы мы вызвали www.example.com / , мы бы получили объект 403 или объект REST, содержащий список XML-документа в зависимости от того, как был настроен ACL на уровне сегмента.

Итак, вопрос: есть ли способ использовать функциональность index.html для контента, размещенного на S3?

Ответы [ 7 ]

49 голосов
/ 24 июня 2014

Для людей, которые все еще борются с этим после 3 лет, позвольте мне добавить некоторую важную информацию:

URL вашего веб-сайта (и на который вы должны указать свой DNS) не является

<bucket_name>.s3-us-west-2.amazonaws.com, но

<bucket_name>.s3-website-us-west-2.amazonaws.com.

Если вы используете первое, оно не будет работать должным образом, независимо от того, сколько вы настроите Индексный документ .

Для конкретного примера рассмотрим:

Чтобы получить истинный адрес веб-сайта, перейдите на консоль управления S3 , выберите целевой сегмент, затем Properties, затем Static Website Hosting. Он покажет URL веб-сайта, который будет работать.

36 голосов
/ 18 февраля 2011

Amazon S3 теперь поддерживает Индексные документы

Индексный документ для корзины может быть настроен на index.html. При доступе к корню сайта или подкаталогу, содержащему документ с таким именем, этот документ возвращается.

Это очень легко сделать с помощью aws cli:

aws s3 website $MY_BUCKET_NAME --index-document index.html

Вы можете установить индексный документ из Консоли управления AWS:

enter image description here

4 голосов
/ 18 декабря 2010

Вы можете легко решить эту проблему с помощью Amazon CloudFront link . В Amazon CloudFront вы можете изменить корневой объект. Вы можете скачать менеджер здесь: m1.mycloudbuddy.com/downloads.html.

3 голосов
/ 15 июня 2017

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

Нам нужно включить «статический веб-хостинг», чтобы S3 служил веб-хостингом. - Перейдите в Свойства -> нажмите на статический веб-хостинг -> Выберите «использовать это ведро для размещения веб-сайта» - Введите индексный документ (по умолчанию index.html), документ с ошибкой и правила перенаправления, если таковые имеются. Selecting static web hosting

use-this-bucket-to-host-a-website

Как ответили в https://stackoverflow.com/a/24377823/3086531, ссылка на веб-хостинг будет

http://bucket -name.s3-website-region.amazonaws.com

2 голосов
/ 09 августа 2010

Да. Использование AWS Cloudfront позволяет назначить файл по умолчанию.

2 голосов
/ 26 августа 2008

Я бы посоветовал прочитать эту ветку с 2006 года (при подключении разработчиков веб-сервисов Amazon). Кажется, нет простого решения.

0 голосов
/ 21 мая 2010

вы можете сделать это с помощью DNS WebForwards и маскировки. просто перейдите к полному пути index.html

www.example.com переходит к http://www.example.com.s3.amazonaws.com и убедитесь, что вы скрыли вывод.

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