2016-12-27 5 views
0

Я использую ElasticBeanStalk на AWS как часть моей среды Parse. Эластичный URL-адрес beanstalk - myparseapp.elasticbeanstalk.com. Когда пользователь регистрируется для учетной записи на моем сайте («www.example.com»), Elastic Beanstalk работает со своей магией.Эластичный бобовый шлейф над SSL на Cloudflare

Это работало нормально до тех пор, пока я не включил SSL на веб-сайте для будущего производства и протестировал его. Регистрация не удается, и я вижу это в консоли разработчика:

parse.min.js: 16 Mixed Содержание: страница в «https://www.example.com/register.html» был загружен через HTTPS, но запросил небезопасный XMLHttpRequest конечную точку 'http://myparseapp.elasticbeanstalk.com/parse/users ». Этот запрос заблокирован ; содержимое должно быть передано через HTTPS.

Я понимаю, почему я получаю сообщение об ошибке. Я не понимаю, как его решить. Все, что я прочитал, говорит: «Зарегистрируйте свой домен, получите сертификат SSL, прикрепите CNAME (www), используя Route 53, примените его к балансировщику нагрузки.

Ну ... 1) У меня уже есть домен, который используется для моего сайта. 2) Мой SSL обслуживается через Cloudflare, где SSL завершается. 3) Зачем мне назначать CNAME «www» на Elastic Beanstalk, когда мой сайт www.example.com является моим фактическим сайтом? Не использовал бы CNAME «www» разбить мой сайт? 4) Мой экземпляр «Упругий фасоль» не находится за балансировщиком нагрузки.

Нужно ли создавать отдельный домен только для эластичного бобового стебля? Это звучит не так. Я мог видеть, что это может быть субдомен, например parseapp.example.com.

Поскольку я использую Cloudflare (и мне это нравится), я бы предпочел не использовать Route 53 для этого ... но если это мой единственный выбор, то пусть будет так.

Итак, как я могу получить доступ к моему приложению Elastic Beanstalk через SSL с помощью Cloudflare?

Заранее благодарю за любую помощь.

ответ

2

Не смотря на всю вашу конфигурацию в CloudFlare, вот как мы настраиваем нашу систему для Parse с CloudFlare и AWS.

Если экземпляр Анализировать сервера (на elasticbeanstalk) не может обрабатывать HTTPS:

  • Настройка субдомен parse.example.com с CloudFlare как CNAME с псевдонимом myparseapp.elasticbeanstalk.com.
  • Убедитесь, что значок облака оранжевый (включен).
  • Перейдите на вкладку Crypto в CloudFlare и убедитесь, что она установлена ​​в Flexible. У этого будут все запросы к любому домену example.com через CloudFlare, который будет использовать SSL CloudFlare, но затем CloudFlare направит этот запрос на ваш elasticbeanstalk.com в HTTP или HTTPS.
  • Убедитесь, что URL-адрес сервера анализа теперь установлен в https://parse.example.com/parse (как определено в вашем CNAME). Это сделает ваш запрос Ajax похожим на: https://parse.example.com/parse/users вместо предыдущего URL.

Если вы можете установить SSL сертификаты на вашем экземпляре, вы можете настроить CloudFlare, чтобы предоставить вам Origin Certificates, что вы можете установить на свой (см Crypto вкладку, под Origin Certificates).Эти сертификаты существуют для обеспечения соединения между CloudFlare и сервером происхождения, в вашем случае ElasticBeanstalk. Если вы это сделаете, вам следует выполнить следующие шаги, но вместо того, чтобы выбрать Flexible на SSL, используйте Full.

+0

Вы спасатель жизни, мой друг. Отлично! Благодаря! – mrbranden

 Смежные вопросы

  • Нет связанных вопросов^_^