Попытка получить полностью бесплатный SSL на Heroku с использованием бесплатного Универсального SSL Cloudflares
Прочтите эту статью: http://mikecoutermarsh.com/adding-ssl-to-heroku-with-cloudflare/
Что, по-видимому, позволяет предположить, что Cloudflare предлагает SSL бесплатно.
Сделанные мной шаги:
- Настройка моего DNS с помощью Cloudflare (бесплатная учетная запись)
- Переадресовал мой домен на my herokuapp (CNAME example-app.com → example-app.herokuapp.com)
- Установите для параметра Cloudflare SSL значение "Полный SSL"
- Добавил мой домен в приложение heroku
-
Принудительное https с этим явным промежуточным программным обеспечением:
app.use(function(req, res, next) { if (req.headers['x-forwarded-proto'] != 'https') { res.redirect('https://' + req.headers.host + req.path); } else { return next(); } });
Домен heroku http://example-app.herokuapp.com работает правильно и перенаправляется на https://example-app.herokuapp.com, зеленый замок и все.
Оба http://example-app.com и https://example-app.com не работают. Значок вкладки браузера просто продолжает вращаться и никогда не разрешается. Любые идеи о том, как это сделать? Возможно ли это?
* UPDATE
Это похоже на то, что это действительно возможно. Поддержка CloudFlare:
Привет, Билл,
В принципе, если "origin" поддерживает SSL-соединение, вы можете использовать Full SSL с CloudFlare.
Саймон
CloudFlare опубликовала это сообщение в блоге сегодня: https://blog.cloudflare.com/universal-ssl-be-just-a-bit-more-patient/
Мой сайт начал разрешать, но сообщение "Ваше соединение не является частным", как в разделе "Ошибки, которые вы можете увидеть" в блоге. Также в моих настройках CloudFlare появляется предупреждение "SSL-выдача", поэтому я представляю, как только он будет выпущен, это может просто работать. Я буду держать вас в курсе.