DNS-конфиг namecheap не работает с https в пользовательском домене Heroku
Я очень запутался в том, как настроить namecheap и heroku, чтобы они работали вместе для обслуживания пользовательских доменов через https.
Я использую heroku ssl beta, к концу конфигурации heroku обновил свою карту домена следующим образом:
myapp.com myapp.com.herokudns.com
www.myapp.com wwww.myapp.com.herokudns.com
Сертификат ssl был успешно добавлен в heroku, я знаю его, потому что могу получить доступ https://myapp.herokuapp.com
с зеленым замком.
Следующим шагом должно быть изменение namecheap DNS, я следовал этому руководству
Записи, которые я добавил:
CNAME Record www myapp.herokuapp.com
URL Redirect @ https://www.myapp.com
Это должно быть, но это не работает, как я ожидал.
Если я наберу myapp.com
это идет к https://www.myapp.com
(так что редирект работает), но без замка.
То же самое, если я иду в https://www.myapp.com
непосредственно.
Я уверен, что это не потому, что изменение еще не вступило в силу, потому что я перепутался с другими доменами, и это уже вступает в силу через 5 минут или около того.
Может кто-нибудь подскажите пожалуйста в чем проблема?
3 ответа
Я узнал, что не так, после загрузки ssl сертификата в heroku, я должен прекратить использовать myapp.herokuapp.com
вместо myapp.com.herokudns.com
, так что в настройках DNS namecheap у меня должно быть следующее:
CNAME Record @ myapp.com.herokudns.com
CNAME Record www www.myapp.com.herokudns.com
Я не думаю, что перенаправление необходимо (даже в документе Namecheap говорится, что вы не должны устанавливать CNAME на пустой домен, но вместо этого следует перенаправить www). Я пытался использовать URL redirect record www https://myapp.com
заменить запись www CNAME, но она не будет работать.
Кроме того, когда я создал сертификат с помощью let encrypt, я только сертифицировал домен myapp.com
, но забыл www.myapp.com
, так что при доступе к домену www браузер жалуется на сертификат от myapp.com
, как только я расширил сертификат на покрытие www.myapp.com
При вышеупомянутом конфиге все домены работают нормально с зеленым замком.
Ваше решение (использующее CNAME для @) в Namecheap также работает для https и экземпляров amazon ELB. Мой домен обслуживается Namecheap. Их рекомендация (неверно, как вы указали) заключалась в том, чтобы URL-адрес fwd https-трафика для моего домена (x.com) соответствовал моему экземпляру amazon elb (который имеет мой сертификат ssl для x.com). URL fwding получает сообщение об ошибке отказа от серверов NameCheap.
Использование CNAME для @ отображает красивую зеленую защищенную печать для URL-адресов https. Я также добавил CNAME www в тот же экземпляр amazon elb для трафика не-https.
Вы перенаправляете на https://www.myapp.com
, Браузер ожидает сертификат для www.myapp.com
там но по твоему описанию есть только сертификат на myapp.herokuapp.com
, Поскольку имя хоста в URL-адресе не соответствует теме сертификата, браузер жалуется на неверный сертификат.