HTTPS перенаправить с пустого домена (example.com) на полный домен «www.example.com» без ошибки?

10

Я пытаюсь перенаправить запросы без www на www на Amazon Route 53.

Я создал корзину S3 с именем «голого» домена и настроил свойства корзины для перенаправления с example.com на www.example.com , а затем на маршруте 53 создал псевдоним для «голого» доменного имени, который указывает на эту корзину S3 на основе на следующем:

Перенаправьте запросы без www на www на Amazon Route 53

Это прекрасно работает для меня, за исключением HTTPS.

Сейчас я не могу получить доступ к https://example.com по какой-то причине.

Любая помощь будет высоко ценится.

Эки Экбал
источник
1
В чем проблема у вас? «какая-то причина» ничего не описывает.
Майкл Хэмптон
Я пытаюсь отправить трафик незащищенного домена на сайт www. Я использую Amazon Route53 для DNS. Я настроил S3 bucket и запись Alias ​​для маршрутизации трафика незащищенного домена на www. Это работает нормально. Проблема заключается в том, что, поскольку я обслуживаю весь контент по протоколу https, при переходе непосредственно на example.com браузер не может установить необходимое соединение с сервером и, следовательно, даже не выдает HTTP-запрос. Поэтому я не перенаправлен на домен www и запрос не выполняется.
Eki Eqbal
@MichaelHampton, чтобы подвести итог, вот возможные сценарии и результаты: 1: введите example.com -> успешное перенаправление на example.com 2: введите www.example.com -> успешный example.com 3: введите example.com -> ОШИБКА
Eki Eqbal
1
Но в чем ошибка ?!
Майкл Хэмптон
Ошибка в том, что мы даже не можем получить доступ к странице. Например, Chrome сообщает: «Попытка подключения Google Chrome к example.com была отклонена. Возможно, веб-сайт не работает или ваша сеть неправильно настроена».
Eki Eqbal

Ответы:

4

Вы можете поставить CloudFront перед своей корзиной s3 и заставить CloudFront разорвать соединение SSL. HTTPS бесплатен при использовании SNI.

шаги:

  • создайте дистрибутив и настройте ssl, с источником, являющимся вашей корзиной перенаправления сайта s3
  • установить, cnameчтобы быть вашим голым доменом
  • обновить маршрут 53, чтобы указать на это распределение
imperalix
источник
Спасибо за ваше желание помочь мужчине, так как мы недавно боролись с этим. Можете ли вы объяснить больше, пожалуйста, или хотя бы предоставить ссылку, чтобы показать, как реализовать это, поскольку это не так просто :)
Eki Eqbal
1
stackoverflow.com/a/24876361/1074480 делает хорошую работу, вдаваясь в подробности. Дайте мне знать, если эти шаги не работают для вас.
imperalix
4

Проще говоря, вы не можете делать то, что пытаетесь сделать с S3, потому что конечные точки веб-сайта S3, предлагаемые S3, не поддерживают https.

Разумеется, DNS не может перенаправлять веб-браузеры, поэтому у Amazon есть простое решение, которое использует корзину S3 без содержимого и просто перенаправляет общий пакет в другой домен в качестве вспомогательного механизма, позволяющего Route 53 выполнить задачу перенаправления браузер.

Но возможность перенаправления example3 → www.example.com для S3 - только http.

Майкл - sqlbot
источник
Спасибо за вашу помощь. Есть ли обходной путь для этого? Я имею в виду, я уверен, что могу сделать что-то здесь. Как насчет комментария @imperalix и использования CloudFront для завершения корзины s3?
Eki Eqbal
@EkiEqbal @imperialix правильно, вы можете использовать Cloudfront, если ваши посетители используют современные браузеры с поддержкой SNI. Вам также необходимо настроить Cloudfront для передачи Host:заголовка источнику, и вам придется использовать конечную точку веб-сайта S3 в качестве пользовательского источника, а не то, что Cloudfront называет «источником S3» (поскольку это не затрагивает конечная точка веб-сайта).
Майкл - sqlbot