Sie können anstelle der Standardadresse, die von App Engine für Ihre Anwendung bereitgestellt wird, eine benutzerdefinierte Domain verwenden.
Wenn Sie eine benutzerdefinierte Domain verwenden möchten, ordnen Sie die Domain Ihrer Anwendung zu und aktualisieren dann Ihre DNS-Einträge. Sie können eine Grunddomain wie example.com
oder eine Subdomain wie subdomain.example.com
zuordnen. Sie können auch Platzhalter verwenden, um Subdomains zuzuordnen.
Wenn Sie eine Domain der Anwendung zuordnen, gibt App Engine ein verwaltetes SSL-Zertifikat für HTTPS-Verbindungen aus. Weitere Informationen dazu, wie Sie SSL mit einer benutzerdefinierten Domain und eigenen SSL-Zertifikaten verwenden, finden Sie unter Benutzerdefinierte Domains mit SSL schützen.
Der Einsatz benutzerdefinierter Domains kann zu merkbaren Latenzen bei Antworten führen, die App Engine an Nutzer Ihrer Anwendung in bestimmten Regionen sendet. Die relevanten Regionen sind:
- us-west2
- us-east4
- northamerica-northeast1
- southamerica-east1
- europe-west2
- europe-west3
- asia-south1
- asia-northeast1
- australia-southeast1
Benutzerdefinierte App Engine-Domains verwenden einen Pool freigegebener IP-Adressen für alle Anwendungen. Wenn Sie eine IP-Adresse verwenden möchten, die nur Ihrer Domain zuordnet, sollten Sie stattdessen einen Load-Balancer mit App Engine einrichten. Dies kann ein Problem mit der Domain-Frontend vermeiden, bei dem eine Anfrage an Anwendung A im SNI-Zertifikat an Anwendung B im HTTP-Host-Header weitergeleitet werden kann.
Hinweis
Wenn Sie keine Domain haben, erwerben Sie eine. Sie können einen beliebigen Domainnamenregistrator verwenden.
Zum Hinzufügen oder Bearbeiten einer benutzerdefinierten Domainzuordnung muss Ihr Konto die Rolle „App Engine-Administrator“ (
roles/appengine.appAdmin
) oder eine benutzerdefinierte Rolle haben, die die Berechtigungappengine.applications.get
enthält.Wenn Sie Cloud Load Balancing und serverlose Netzwerk-Endpunktgruppen (NEGS) nutzen, um Traffic an Ihre App Engine-Anwendung weiterzuleiten, empfehlen wir, Ihre benutzerdefinierte Domain dem Load-Balancer und nicht direkt Ihrer Anwendung zuzuordnen. Außerdem sollten Sie von Google verwaltete SSL-Zertifikate verwenden, die für den Load-Balancer erstellt wurden. Dadurch entfällt die Notwendigkeit, für jede serverlose Anwendung separate SSL-Zertifikate zu verwalten. Mit Cloud Load Balancing können Sie SSL-Richtlinien zum Steuern der Funktionen von SSL festlegen, die Ihr Load-Balancer mit Clients aushandelt.
Weitere Informationen finden Sie auf den folgenden Seiten:
- Von Google verwaltete SSL-Zertifikate verwenden
- Selbstverwaltete SSL-Zertifikate verwenden
- SSL-Richtlinien
Beachten Sie die folgende Einschränkung:
- Wir empfehlen die Verwendung von Steuerelementen für eingehenden Traffic, damit Ihre Anwendung nur Anfragen empfängt, die vom Load-Balancer (und ggf. von der VPC) gesendet werden. Andernfalls können Nutzer die App Engine-URL Ihrer Anwendung verwenden, um den Load-Balancer, die Google Cloud Armor-Sicherheitsrichtlinien, SSL-Zertifikate und private Schlüssel zu umgehen, die über den Load-Balancer weitergegeben werden.
Benutzerdefinierte Domain einer Anwendung zuordnen
Wechseln Sie in der Google Cloud Console zum Tab Anwendungseinstellungen auf der App Engine-Seite Einstellungen.
Zu den Anwendungseinstellungen
Wenn Sie den Standard-Google Accounts API-Referrer nicht ändern müssen, fahren Sie mit dem nächsten Schritt fort.
Wenn Sie die Google Workspace-Authentifizierung für Ihre benutzerdefinierte Domain aktivieren müssen, klicken Sie auf Bearbeiten, um den Google Accounts API-Referrer zu ändern. Wählen Sie im Drop-down-Menü Google-Authentifizierung die Option Google Workspace-Domain aus und fügen Sie Ihre Domain, z. B.
example.com
, in ein leeres Feld ein.Wählen Sie in der Google Cloud Console auf der App Engine-Seite Einstellungen den Tab Benutzerdefinierte Domains aus.
Klicken Sie auf Benutzerdefinierte Domain hinzufügen.
Wenn Ihre Domain bereits bestätigt wurde, wird sie im Bereich Gewünschte Domain auswählen angezeigt. Wählen Sie im Drop-down-Menü die Domain aus und klicken Sie auf Weiter.
Wenn Sie Ihre Domain noch nicht bestätigt haben, gehen Sie so vor:
- Wählen Sie Neue Domain bestätigen aus dem Drop-down-Menü aus.
Geben Sie den Namen der Grunddomain ein (z. B. "example.com") und klicken Sie auf Bestätigen.
Auch wenn Sie nur eine Subdomain zuordnen möchten, z. B. „www.subdomain.example.com“, geben Sie den Namen der Grunddomain ein, um die Inhaberschaft zu bestätigen.
Domainnamen müssen kürzer als 64 Byte sein.
Geben Sie Informationen im eingeblendeten Search Console-Fenster ein. Weitere Informationen zur Verwendung der Search Console finden Sie in der Search Console-Hilfe.
Nachdem Sie die Schritte in der Search Console abgeschlossen haben, kehren Sie in der Google Cloud Console zur Seite Neue benutzerdefinierte Domain hinzufügen zurück.
Geben Sie im Abschnitt Domain auf [Projekt-ID] ausrichten die Domain und die Subdomains an, die Sie zuordnen möchten.
Wir empfehlen die Zuordnung der Grunddomain und der Subdomain
www
. Sie können bei Bedarf weitere Subdomains hinzufügen.Wenn Sie alle gewünschten Zuordnungen hinzugefügt haben, klicken Sie auf Zuordnungen speichern.
Klicken Sie auf Weiter, um die DNS-Einträge Ihrer Domain anzuzeigen.
Sie können diese Einträge jederzeit auf der App Engine-Seite Einstellungen auf dem Tab Benutzerdefinierte Domains abrufen.
Melden Sie sich auf der Website des Domainregistrators an und aktualisieren Sie Ihre DNS-Einträge mit den im vorherigen Schritt angezeigten Einträgen.
DNS-Einträge bei Domain-Registrator aktualisieren
Nachdem Sie Ihren Dienst einer benutzerdefinierten Domain in App Engine zugeordnet haben, müssen Sie Ihre DNS-Einträge bei Ihrem Domainregistrator aktualisieren. Zur Vereinfachung werden von App Engine die DNS-Einträge, die Sie eingeben müssen, generiert und angezeigt.
Rufen Sie die DNS-Eintragsinformationen für Ihre Domainzuordnungen ab:
Wählen Sie in der Google Cloud Console auf der App Engine-Seite Einstellungen den Tab Benutzerdefinierte Domains aus. Auf der Seite werden DNS-Einträge für alle Domains aufgelistet, die Sie Ihrer Anwendung zugeordnet haben.
Melden Sie sich in Ihrem Konto bei Ihrem Domainregistrator an und öffnen Sie die Seite für die DNS-Konfiguration.
Suchen Sie auf der Konfigurationsseite der Domain den Bereich mit den Hosteinträgen und fügen Sie die DNS-Einträge hinzu, die Sie bei der Zuordnung der Domain zu Ihrer Anwendung abgerufen haben.
Geben Sie die folgenden Informationen in die Eintragsfelder ein:
- Eintragstyp: Geben Sie den Eintragstyp ein, der im DNS-Eintrag angezeigt wird, den Google für Sie erstellt hat (
A
,AAAA
oderCNAME
). Eintragsname:
- Geben Sie
@
in denA
- oderAAAA
-Einträgen ein. - Geben Sie einen Domainnamen der dritten Ebene in den
CNAME
-Einträgen ein. Geben Sie z. B.www
ein, um die Subdomainwww.example.com
zuzuordnen.
- Geben Sie
Wenn Sie Cloud DNS verwenden, müssen Sie beim Erstellen eines
A
-Eintrags für Ihre übergeordnete benutzerdefinierte Domain (beispiel.de) kein @-Symbol hinzufügen. Bei anderen DNS-Anbietern wie GoDaddy müssen Sie jedoch möglicherweise ein @-Symbol angeben.TTL: Geben Sie Ihren Anforderungen entsprechend einen TTL-Wert an.
Daten: Geben Sie die Eintragsdaten (rrdata) ein, die im DNS-Eintrag angezeigt werden, den Google für Sie erstellt hat.
- In den
A
- oderAAAA
-Einträgen sind die Eintragsdaten eine IP-Adresse. - In den
CNAME
-Einträgen sind die Eintragsdaten ein Domainname.
- In den
- Eintragstyp: Geben Sie den Eintragstyp ein, der im DNS-Eintrag angezeigt wird, den Google für Sie erstellt hat (
Speichern Sie die Änderungen auf der DNS-Konfigurationsseite des Kontos Ihrer Domain. In den meisten Fällen dauert es nur ein paar Minuten, bis diese Änderungen wirksam werden. In manchen Fällen kann es aber auch mehrere Stunden dauern, je nach Registrator und Gültigkeitsdauer (TTL) aller früheren DNS-Einträge für Ihre Domain. Sie können das
dig
-Tool, z. B. diesedig
-Onlineversion, verwenden, um zu bestätigen, dass die DNS-Einträge erfolgreich aktualisiert wurden.Prüfen Sie, ob der Vorgang erfolgreich war. Dazu rufen Sie den Dienst über die neue URL auf (z. B.
https://www.example.com
). Beachten Sie, dass es mehrere Minuten dauern kann, bis das automatische SSL-Zertifikat ausgestellt wird.
Inhaberschaft an andere Google Cloud-Nutzer oder Dienstkonten delegieren
Wenn Sie die Inhaberschaft Ihrer Domain an andere Nutzer oder Dienstkonten delegieren müssen, können Sie Berechtigungen über die Seite Search Console hinzufügen. Öffnen Sie in der Google Cloud Console die Seite Dienstkonten, um eine Liste der Dienstkonten anzusehen.
So fügen Sie Berechtigungen über die Search Console hinzu:
Öffnen Sie die Bestätigung in der Search Console.
Klicken Sie unter Attribute auf die Domain, für die Sie einen Nutzer oder ein Dienstkonto hinzufügen möchten.
Klicken Sie im seitlichen Menü auf Einstellungen.
Klicken Sie unter Allgemeine Einstellungen auf Nutzer und Berechtigungen, um die Inhaber Ihrer Domain zu finden.
Klicken Sie auf Nutzer hinzufügen und geben Sie die E-Mail-ID des Nutzers ein. Wählen Sie die erforderliche Berechtigung aus, die Sie dem Nutzer gewähren möchten. Weitere Informationen zu Berechtigungen finden Sie im Hilfeartikel Verwalten von Inhabern, Nutzern und Berechtigungen.
Klicken Sie auf Hinzufügen, um dem Nutzer die Inhaberschaft zu übertragen.
Subdomains verwenden
Wenn Sie für die benutzerdefinierte Domain eine Platzhalterzuordnung für Subdomains einrichten, werden Anfragen für alle übereinstimmenden Subdomains verarbeitet.
- Wenn der Nutzer eine Domain aufruft, deren Name mit dem einer Anwendungsversion oder eines Anwendungsdienstes übereinstimmt, wird diese Version ausgeführt.
- Wenn der Nutzer eine Domain aufruft, die einem Dienstnamen entspricht, wird dieser Dienst ausgeführt.
- Für jede Grunddomain gilt ein wöchentliches Limit von 20 verwalteten SSL-Zertifikaten. Wenn das Limit erreicht wird, versucht App Engine weiterhin, so lange verwaltete Zertifikate auszustellen, bis alle Anfragen erfüllt sind.
Platzhalterzuordnungen
Sie können Platzhalter für die Zuordnung von Subdomains auf allen Ebenen verwenden, angefangen bei Subdomains der dritten Ebene. Wenn Ihre Domain beispielsweise example.com
ist und Sie Text in das Feld für die Webadresse eingeben, erfolgt die Zuordnung so:
- Bei Eingabe von
*.example.com
werden der Anwendung alle Subdomains vonexample.com
zugeordnet. - Bei Eingabe von
*.private.example.com
werden der Anwendung alle Subdomains vonprivate.example.com
zugeordnet. - Bei Eingabe von
*.nichol.sharks.nhl.example.com
werden der Anwendung alle Subdomains vonnichol.sharks.nhl.example.com
zugeordnet. - Bei Eingabe von
*.excogitate.system.example.com
werden der Anwendung alle Subdomains vonexcogitate.system.example.com
zugeordnet.
Sie können in App Engine Platzhalterzuordnungen für Dienste verwenden. Dazu definieren Sie mithilfe der Datei dispatch.yaml
das Anfragenrouting für einzelne Dienste.
Wenn Sie Google Workspace mit anderen Subdomains Ihrer Domain wie sites
und mail
verwenden, haben diese Zuordnungen eine höhere Priorität und werden vor der Platzhalterzuordnung abgeglichen. Falls Sie andere App Engine-Anwendungen haben, die anderen Subdomains zugeordnet sind, weisen diese Zuordnungen ebenfalls eine höhere Priorität als Platzhalterzuordnungen auf.
Einige DNS-Anbieter lassen möglicherweise keine Subdomainzuordnung über Platzhalter zu. Insbesondere müssen DNS-Anbieter Platzhalter bei CNAME
-Hosteinträgen zulassen.
Platzhalter-Weiterleitungsregeln gelten für URLs, die Komponenten für Dienste, Versionen und Instanzen enthalten, und folgen dabei den Dienstweiterleitungsregeln für App Engine.
Benutzerdefinierte Domains aus Ihrer Anwendung löschen
Zum Löschen einer benutzerdefinierten Domainzuordnung aus Ihrer Anwendung muss Ihr Konto die Rolle „App Engine-Administrator“ (roles/appengine.appAdmin
) oder eine benutzerdefinierte Rolle haben, die die Berechtigung appengine.applications.update
enthält.
Gehen Sie in der Google Cloud Console so vor:
Wählen Sie auf der App Engine-Seite Einstellungen den Tab Benutzerdefinierte Domains aus.
Wählen Sie den benutzerdefinierten Domainnamen aus und klicken Sie auf Löschen.
Alternativ können Sie zum Löschen benutzerdefinierter Domains gcloud-Befehle oder die Admin API verwenden.
Fehlerbehebung
Wenn Ihre Anwendung nach der Konfiguration Ihrer benutzerdefinierten Domain mit der Google Workspace-Domainauthentifizierung Authentifizierungsfehler zeigt, entfernen Sie Ihre benutzerdefinierte Domainzuordnung und wiederholen die Schritte unter Benutzerdefinierte Domain Ihrer Anwendung zuordnen. Sie müssen Ihre Google Workspace-Domainauthentifizierung konfigurieren, bevor Sie die Zuordnung der benutzerdefinierten Domain in App Engine konfigurieren.
Nächste Schritte
- Benutzerdefinierte Domains mit SSL schützen
- Informationen zum Verwalten eingehender Anfragen an Ihre benutzerdefinierte Domain durch Cloud Load Balancing finden Sie unter Benutzerdefinierte App Engine-Domain zu Cloud Load Balancing migrieren.