Amazon S3 Redirect и Cloudfront



Я пытаюсь настроить 301 перенаправление на S3 с помощью объектов, указанных здесь http://docs.aws.amazon.com/AmazonS3/latest/dev/how-to-page-redirect.html. у меня были некоторые проблемы и не могу понять, что я делаю неправильно.



Я получаю пустую страницу (0-байтовый файл), как будто значение метаданных "местоположение перенаправления веб-сайта" не установлено.



что я делаю не так?



кроме того, это работает на AWS CloudFront?





Моя Настройка Консоли S3
S3 Console Setup



Примечание:



У меня есть эта настройка для размещения статического сайта.
Я использую ssl / https с моим собственным сертификатом, загруженным и установленным в дистрибутиве cloudfront.
Все страницы, похоже, работают, кроме объектов перенаправления.
Я попытался настроить правила маршрутизации, но они, похоже, не работают в Cloudfront.



Я пытаюсь получить доступ к перенаправлениям как через url cloudfront, так и url-адрес s3 (https://s3.amazonaws.com/ {bucket} / users / sign_in)

612   2  

2 ответов:

для функций, подобных веб-сайту в S3, таких как перенаправления, сообщения об ошибках html и индексные документы, вы не можете использовать конечную точку REST (${bucket_name}.s3.amazonaws.com или ${bucket_name}.s3.${region}.amazonaws.com) так как эти функции предоставляются только конечными точками веб-сайта (${bucket_name}.s3-website.${region}.amazonaws.com).

http://docs.aws.amazon.com/AmazonS3/latest/dev/WebsiteEndpoints.html

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

введите конечную точку хостинга статического веб-сайта Amazon S3 для вашего ведра. Это значение отображается в консоли Amazon S3, а на свойства страница под Статический Хостинг Сайтов.

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

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html

обратите внимание, что веб-конечные точки не поддерживают HTTPS, но вы можете настроить Cloudfront для извлечения из корзины с HTTP, даже если клиентское соединение является HTTPS.


полезный совет: при устранении неполадок и тестировании изменений с помощью CloudFront пользователи часто путают очевидную "задержку" между тем, когда вы делаете изменения и когда CloudFront начинает показывать новое поведение. В случае страниц ошибок CloudFront имеет значение по умолчанию 5 минутошибка кэширования минимальный TTLэто предотвращает повторную отправку запросов на неудачные страницы в источник, и это отдельный таймер от минимального/по умолчанию/максимального TTL, установленного в поведении кэша. В частности, при тестировании вы можете отключить эти таймеры и принудительно повторить попытку с каждым последующим запросом страниц, которые вернули ошибки, используя шаги, которые я предоставил в ответе на вопрос о кажущемся Задержка Amazon CloudFront.

У меня была та же проблема с переадресацией неудачных и нулевой длины файлов загружаются, но не с помощью Cloudfront.

первопричина в моем случае была моя запись CNAME в DNS указал на конечную точку REST (static.righto.com.s3-us-west-2.amazonaws.com) вместо сайта конечную точку (статический.ладно.ком.С3-Сайт-us-west-2.amazonaws.com). Обновление запись CNAME починил мой редиректы.

еще одним признаком этой проблемы было отсутствие отображаемых страниц странице ошибку XML, а не html-страницу ошибки.

документ объясняет разницу между конечными точками веб-сайта и конечными точками REST.

Comments

    Ничего не найдено.