Примечание. Я вижу несколько других вопросов о перенаправлении. к корень их статических веб-сайтов S3, но я ничего не видел о перенаправлении от корень доменного имени к сайт CloudFront/S3.
У меня есть мой личный веб-сайт, развернутый в AWS CloudFront и статически размещенный на S3. У меня есть www. Запись CNAME указывает на имя хоста CloudFront, и это работает правильно, но я обнаружил, что у вас не может быть записи CNAME для корня домена. У меня уже есть VPS с nginx, на котором размещено несколько других моих проектов. Можно ли просто добавить запись A из корня домена в мой IP-адрес VPS и настроить перенаправление запросов nginx для корня домена на имя хоста CloudFront?
Редактировать: чтобы уточнить - я хотел бы, чтобы весь трафик, направляющийся на example.com, перенаправлялся на имя хоста CloudFront, назначенное моему веб-сайту. Я могу сделать это с www.example.com создав запись CNAME для «www.» указывая на желаемое имя хоста. Однако похоже, что Google Domains не позволяет создавать записи CNAME для корня (т. е. только для example.com), и поэтому мне интересно, как перенаправить трафик с example.com на мое имя хоста CloudFront (в отличие от того, что я могу сделать прямо сейчас, что только вперед www.example.com на облачный фронт).
И, если это уместно, я не могу выполнить какое-либо перенаправление с подстановочными знаками, потому что я использую другие имена хостов в домене для разных проектов, требующих определенных записей A.
И будет ли это приемлемой/хорошей конфигурацией nginx для сайта? Я думаю, это сработает, потому что www.example.com уже правильно перенаправляет на имя хоста CloudFront.
сервер {
слушать 443 ssl;
имя_сервера пример.com;
переписать ^/$ https://www.example.com на постоянный;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
}