
내 앱이 에서 제공되고 https://beta.myapp.com
(모든 곳에서 https를 강제 적용하고 있음) 이제 로 변경하고 싶습니다 https://www.myapp.com
.
모든 beta.
요청을 www.
.
현재 은(는) www
동일한 앱을 가리키고 있으며 해당 앱은 다음으로 리디렉션됩니다 beta
(액세스하려고 하면 SSL 오류가 발생합니다 https://www
).
내가 생각하는 것은 가능하다:
www
기본 앱에서 인증서를 사용 하고beta
모든 요청을 다른 앱으로 리디렉션하는 작업을 담당하는 다른 앱(인증서 포함)을 생성합니다. (예https://beta.myapp.com/about
:https://www.myapp.com/about
). 하지만 내 앱은 Heroku에서 호스팅되며 월 $20/월/인증서를 지불해야 하므로 앱이 하나 더 있으면 비용이 더 많이 듭니다.www
및 를 모두 포함하는 와일드카드/다중 도메인 인증서를 받으세요beta
. 하지만 이미 2개의 인증서가 있으므로 다른 인증서를 구매할 생각은 없습니다.
그것을 할 수 있는 다른/더 좋은 방법이 있나요?
답변1
조금 까다롭고 선택의 여지가 많지 않습니다.
베타/www(및 루트 도메인)를 모두 기본 Heroku 애플리케이션으로 지정하여 앱 내부에서 리디렉션을 처리할 수 있습니다. 그러나 SSL 오류를 방지하려면 www와 베타 호스트 이름을 모두 포함하는 인증서를 설치해야 합니다.
Heroku는 동일한 앱에서 두 개의 인증서를 연결하는 기능을 제공하지 않으므로 이 경우 와일드카드 인증서를 구입해야 합니다.
다른 해결책은 beta
다른 서버를 가리키는 것입니다. 해당 서버에 인증서를 설치하고 트래픽을 기본 애플리케이션으로 리디렉션합니다. 불행하게도 HTTP 리디렉션 헤더가 전송되기 전에 SSL 협상이 발생하기 때문에 여기에 인증서를 설치해야 합니다. 따라서 인증서를 설치하지 않으면 리디렉션되기 전에 방문자에게 인증서 오류(또는 경고)가 표시됩니다. 브라우저에 따라 리디렉션이 발생하거나 발생하지 않을 수 있습니다.
두 솔루션 모두 이 경우 Heroku의 유연성이 제한되어 있기 때문에 추가적인 경제적 노력이 필요할 수 있습니다. 하나는 와일드카드 인증서를 구매해야 하고, 다른 하나는 다른 앱을 위한 새 SSL 엔드포인트를 구매해야 합니다(어딘가의 저렴한 서버에서 호스팅할 방법을 찾지 못한 경우).
최근에 기본 사이트에 대한 인증서를 구입하셨을 것으로 알고 있습니다. 대부분의 SSL 인증서 제공업체는 30일 환불을 제공하므로 환불을 받고 와일드카드를 구입할 수 있는지 확인하고 싶을 수도 있습니다.
선택을 해야 한다면 아마도 와일드카드를 선택할 것 같습니다.
답변2
Nick이 제안한 대로 CNAME을 사용하기 전에 이 작업을 수행했습니다. 아마도 (실용적이지 않을 수도 있는) 또 다른 방법은 와일드카드 인증서를 사용하는 것입니다.
마지막 옵션은 대체 이름을 알고 있는 경우 모든 호스트 이름이 포함된 인증서에 SAN(주체 대체 이름)을 제공하는 것입니다.