Кажется, есть два способа разместить статический веб-сайт на S3/CloudFront.
- Создайте корзину S3 с полным общедоступным доступом и статическим веб-сайтом, для которого установлено значение «Включено» + конфигурация CloudFront.
- Создайте корзину S3 без общедоступного доступа и отключите статический веб-сайт + конфигурация CloudFront.
Что мне не нравится в (1), так это вопиющий красный текст «НЕ ДЕЛАЙТЕ ЭТОГО» для публичного доступа. Но работает отлично.
Что мне не нравится в (2), так это то, что я теряю Статический веб-сайт, установленный на Включенные преимущества, как и все, что автоматически перенаправляется на index.html
. Теперь я вижу, что есть корень происхождения
объекта в настройках CloudFront, но это работает только для моего базового домена (например, mysite.com
). Мой сайт является SPA и с (1), если я иду в mysite.com/профиль
это будет правильно перейти к mysite.com/index.html
Я думаю из-за перенаправления 404, которое я настроил. Но с (2) собирается mysite.com/профиль
это не 404, а скорее отказ в доступе 403, который я не думаю, что разумно перенаправлять, как 404.
Так должен ли я придерживаться варианта (1) даже с ярко-красным текстом о публичном доступе? Или есть правильный способ сделать SPA без публичного доступа/статического хостинга веб-сайтов?