
Meine App wird auf bereitgestellt https://beta.myapp.com
(ich erzwinge überall https) und ich möchte jetzt zu wechseln https://www.myapp.com
.
Ich frage mich, wie ich jede beta.
Anfrage ordnungsgemäß an umleiten kann www.
.
Im Moment www
verweist es auf die gleiche App und die App leitet dann weiter zu beta
(beim Versuch, darauf zuzugreifen, wird https://www
jedoch ein SSL-Fehler angezeigt).
Was ich für machbar halte:
- Ich verwende das
www
Zertifikat für die Haupt-App und erstelle eine weitere App (mit dembeta
Zertifikat), die jede Anfrage an die andere App umleiten muss (z. B.https://beta.myapp.com/about
anhttps://www.myapp.com/about
). Aber meine App wird auf Heroku gehostet und ich muss 20 $/Monat/Zertifikat bezahlen, also bedeutet eine weitere App auch höhere Kosten. - Holen Sie sich ein Wildcard-/Multidomain-Zertifikat, das sowohl
www
als auch abdecktbeta
. Da ich aber bereits zwei Zertifikate habe, möchte ich nicht wirklich noch ein weiteres kaufen.
Gibt es eine andere/bessere Möglichkeit, dies zu tun?
Antwort1
Das ist ein wenig knifflig und Sie haben nicht viel Auswahl.
Sie können die Umleitung innerhalb der App handhaben, indem Sie sowohl Beta/www (als auch die Stammdomäne) auf die Hauptanwendung von Heroku verweisen. Um SSL-Fehler zu vermeiden, müssen Sie jedoch ein Zertifikat installieren, das sowohl die www- als auch die Beta-Hostnamen abdeckt.
Da Heroku Ihnen nicht die Möglichkeit bietet, zwei Zertifikate derselben App zuzuordnen, müssten Sie in diesem Fall ein Wildcard-Zertifikat erwerben.
Die andere Lösung besteht darin, beta
auf einen anderen Server zu verweisen. Installieren Sie das Zertifikat auf diesem Server und leiten Sie den Datenverkehr zur Hauptanwendung um. Leider müssen Sie das Zertifikat hier trotzdem installieren, da die SSL-Aushandlung vor dem Senden des HTTP-Umleitungsheaders erfolgt. Wenn Sie es also nicht installieren, wird Ihren Besuchern vor der Umleitung ein Zertifikatsfehler (oder eine Warnung) angezeigt. Je nach Browser kann die Umleitung in diesem Fall erfolgen oder nicht.
Beide Lösungen erfordern wahrscheinlich einen zusätzlichen wirtschaftlichen Aufwand Ihrerseits, hauptsächlich aufgrund der in diesem Fall eingeschränkten Flexibilität von Heroku. Bei einer Lösung ist der Kauf eines Wildcard-Zertifikats erforderlich, bei der anderen der Kauf eines neuen SSL-Endpunkts für die andere App (es sei denn, Sie finden eine Möglichkeit, diese irgendwo auf einem günstigen Server zu hosten).
Ich kann verstehen, dass Sie das Zertifikat für die Hauptseite möglicherweise erst kürzlich gekauft haben. Bedenken Sie, dass die meisten Anbieter von SSL-Zertifikaten eine 30-tägige Rückerstattung anbieten. Sie sollten prüfen, ob Sie eine Rückerstattung erhalten und die Wildcard kaufen können.
Wenn ich eine Wahl treffen müsste, würde ich mich wahrscheinlich für einen Platzhalter entscheiden.
Antwort2
Ich habe dies bereits getan, indem ich CNAMEs verwendet habe, wie Nick vorgeschlagen hat. Eine andere Möglichkeit (die für Sie möglicherweise nicht praktikabel ist) ist die Verwendung von Platzhalterzertifikaten.
Wenn Sie Ihre alternativen Namen kennen, besteht die letzte Möglichkeit darin, den SAN (Subject Alternate Names) auf Ihrem Zertifikat anzugeben, der alle Ihre Hostnamen enthält.