Anleitungen im Zusammenhang mit Beach

So weist du einer Beach Instanz eine Domäne zu

Dieser Leitfaden enthält alle Informationen darüber, wie du deiner Instanz eine benutzerdefinierte Domain zuweist, ein SSL-Zertifikat erhältst und DNS einrichtest, um mit deiner Website live zu gehen.

Übersicht

Bevor du mit dieser Anleitung beginnst, benötigst du Folgendes

  • eine Beach Produktionsinstanz mit einer Neos Website oder Flow-Anwendung
  • zugang zu einer Domain, die du bei einem anderen Registrar registriert hast
  • zugriff auf die DNS-Konfiguration für deine Domain

In diesem Tutorium werden wir zwei Domains für eine Instanz einrichten:

  • www.example.com ist die Hauptdomain, die die Besucher der Website verwenden werden
  • example.com leitet die Besucher automatisch auf www.example.com um

DNS auf Beach umstellen

Wenn deine Instanz gut aussieht und bereit ist, in Betrieb zu gehen, kannst du das DNS deiner Domain(s) so einrichten, dass der Verkehr auf Beach landet. Die genauen Schritte hängen von deinem aktuellen Registrar / DNS-Anbieter ab, aber die meisten sollten dem folgenden Beispiel sehr ähnlich sein.

Domains mit einer Subdomain (z. B. www.example.com) können als normaler CNAME-Eintrag konfiguriert werden. Die "kanonische" Domain lautet dann euw1.flownative.cloud. Hier ist ein Beispiel für einen korrekten CNAME-Eintrag:

www.example.com. CNAME euw1.flownative.cloud.

Zone apex / Stammdomäne

Domains ohne Subdomain (zum Beispiel example.com) sind etwas Besonderes. Sie werden "Zone Apex" oder "Root-Domain" genannt und dürfen keinen CNAME zu einer anderen Domain haben. Das Domänennamensystem verlangt, dass sie stattdessen einen "A"-Eintrag haben, der auf eine IP-Adresse statt auf einen Domänennamen verweist.

Wenn du eine Root-Domain verwenden willst, brauchst du einen DNS-Anbieter, der die Emulation eines CNAME für Root-Domains unterstützt (er erstellt zwar einen A-Eintrag, stellt aber sicher, dass dieser automatisch und immer auf die IP-Adresse der von dir angegebenen Domain zeigt). Diese speziellen CNAMEs werden je nach Anbieter etwas anders genannt - hier sind einige Beispiele:

Das heißt: Du brauchst einen DNS-Dienst, der diese Art von speziellen CNAMEs unterstützt, um example.com auf Beach zu verweisen. Du solltest es vermeiden, einen A-Eintrag zu erstellen und direkt die IP-Adresse von euw1.flownative.cloud verwenden, denn diese IP-Adresse kann sich in Zukunft ändern!

SSL-Zertifikate

Sobald die DNS-Änderungen für deine Domains aktiv sind, erhält Beach automatisch SSL-Zertifikate. Beach verwendet "Let's Encrypt" als Zertifikatsanbieter. Um ein Zertifikat zu erhalten, muss der HTTP-Verkehr für eine bestimmte Domain bei Beach landen, damit Beach nachweisen kann, dass es für diese Domain zuständig ist.

Sobald Beach erfolgreich ein Zertifikat für deine Domain erhalten hat, sorgt es automatisch dafür, dass es auf dem neuesten Stand bleibt und ein neues Zertifikat erhält, bevor das alte abläuft

Lösen typischer Probleme

Vor allem, wenn du einen DNS-Dienst verwendest, der als Proxy fungiert (z. B. Cloudflare), gibt es eine Reihe von Einstellungen, die den automatischen Abruf von Zertifikaten stören können. Wenn Beach kein Zertifikat für deine Domain abrufen kann, lies weiter, um zu verstehen, wie dieser Prozess unter der Haube funktioniert.

Um ein neues Zertifikat von der Let's Encrypt-Zertifizierungsstelle zu erhalten, muss Beach beweisen, dass es dazu berechtigt ist. Dies wird durch eine "Herausforderung" realisiert: Let's Encrypt weist Beach an, mit einem bestimmten Token zu antworten, wenn es versucht, über eine spezielle URL auf die Domain zuzugreifen. Diese URL wird über HTTP angefordert (nicht über HTTPS, weil es - nun ja - noch kein Zertifikat für eine sichere Verbindung gibt) und sieht ungefähr so aus:

http://www.example.com/.well-known/acme-challenge/www.example.com

Deshalb ist es wichtig, dass jede Anfrage an deine Domain, die über HTTP und diesen speziellen Pfad erfolgt, den Beach Zertifikatsmanager erreichen kann. Außerdem ist es wichtig, dass diese URL auch in Zukunft funktioniert, denn Let's Encrypt-Zertifikate sind nur etwa 3 Monate lang gültig und müssen erneuert werden.

HTTP-zu-HTTPS-Weiterleitungen ausschalten

Eine Funktion, die von den meisten Proxy-Diensten angeboten wird, macht die Zertifikatsautomatisierung zunichte: Wenn der Dienst alle HTTP-Anfragen sofort auf HTTPS umleitet, gibt es für Let's Encrypt keine Möglichkeit, über HTTP auf die ".well-known" URL zuzugreifen.

Du musst diese Funktion ausschalten, damit die Zertifikate funktionieren.

Im Zweifelsfall kannst du versuchen, die Challenge-URL in deinem Browser aufzurufen (siehe oben). Sie sollte einen 404 Not Found Fehler oder das aktuelle Challenge-Token zurückgeben. Sie sollte dich nicht zu HTTPS umleiten oder etwas anderes zurückgeben.

Deaktiviere immer die HTTP-zu-HTTPS-Umleitung in Proxy-Diensten wie Cloudflare