Как использовать пользовательский домен на Heroku с Parse Server?
Сервер разбора размещен на Heroku по адресу myapp.herokuapps.com
,
Приложение Heroku имеет собственный домен example.com
, В домене есть запись CNAME myapp.herokuapps.com
,
Подключение Parse iOS SDK работает для конечных точек:
https://myapp.herokuapps.com/parse
http://myapp.herokuapps.com/parse
http://example.com/parse
Но это не работает для
https://example.com/parse
Консоль XCode показывает ошибку:
An SSL error has occurred and a secure connection to the server cannot be made. (Code: 100, Version: ...)
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9838)
Почему это не работает?
2 ответа
Решением было добавить сертификат TSL в приложение Heroku. Если у вас есть платный dyno, сертификат доступен без дополнительной оплаты.
Все приложения с платными динамо включают ACM бесплатно.
- Откройте приложение Heroku на панели инструментов Heroku.
- Открыть вкладку "Настройки"
- В разделе
Domains and certificates
щелчокConfigure SSL
и выбратьAutomatically configure using Automated Certificate Management
, - Нажмите
Add domain
добавить домен, с которого должен быть отправлен запрос, напримерapi.example.com
, - На сайте регистратора вашего домена установите
CNAME
заapi.example.com
в домен в настройках приложения Heroku, напримерapi.example.com.herokudns.com
- Подождите, пока статус домена на панели инструментов Heroku не станет
Done
Работает.
Вы должны купить сертификат SSL для домена, который Heroku считает безумным. Это будет около 200 долларов в месяц. или что-то смешное, но у вас действительно должен быть тот, если вы собираетесь иметь производственное приложение.