Puoi utilizzare un dominio personalizzato anziché l'indirizzo predefinito utilizzato da App Engine offerti per la tua app.
Per utilizzare un dominio personalizzato, mappalo alla tua app e poi aggiorna i record DNS. Puoi mappare un dominio semplice, come example.com
o un sottodominio,
ad esempio subdomain.example.com
. Puoi anche utilizzare caratteri jolly.
per mappare i sottodomini.
Per impostazione predefinita, quando mappi un dominio alla tua app, App Engine rilascia un certificato gestito per SSL per le connessioni HTTPS. Per ulteriori informazioni sull'utilizzo di SSL con il tuo dominio personalizzato, inclusa la modalità di utilizzo del tuo SSL certificati, consulta Protezione dei domini personalizzati con SSL.
L'uso di domini personalizzati può aggiungere una latenza notevole alle risposte che App Engine invia agli utenti della tua app in alcune regioni. Le regioni sono le seguenti:
- us-west2
- us-east4
- northamerica-northeast1
- southamerica-east1
- europe-west2
- europe-west3
- asia-south1
- asia-northeast1
- australia-southeast1
I domini personalizzati di App Engine utilizzano un pool di indirizzi IP condivisi per tutti diverse applicazioni. Se vuoi utilizzare un indirizzo IP che si mappa solo al tuo dominio, devi invece configurare un bilanciatore del carico con App Engine. In questo modo è possibile attenuare un problema di fronting del dominio in cui una richiesta all'applicazione A nel certificato SNI può essere indirizzata all'applicazione B nell'intestazione Host HTTP.
Prima di iniziare
Se non hai un dominio, acquistane uno. Puoi utilizzare qualsiasi registrar di nomi di dominio.
Per aggiungere o modificare una mappatura di dominio personalizzata, il tuo account deve avere Il ruolo Amministratore App Engine (
roles/appengine.appAdmin
) o un ruolo personalizzato contenente Autorizzazioneappengine.applications.get
.Se utilizzi il bilanciamento del carico di Cloud e il gruppo di endpoint di rete serverless (NEGS) per instradare il traffico alla tua app App Engine, ti consigliamo di mappare il tuo dominio personalizzato al bilanciatore del carico anziché direttamente alla tua app e di utilizzare i certificati SSL gestiti da Google creati per il bilanciatore del carico. In questo modo, viene eliminata la necessità di gestire certificati SSL separati per ogni app serverless. Con Cloud Load Balancing, puoi impostare criteri SSL che controllano le funzionalità di SSL che il bilanciatore del carico negozia con i client.
Per ulteriori informazioni, consulta le seguenti pagine:
Tieni presente i seguenti limiti:
- Ti consigliamo di utilizzare i controlli di immissione in modo che la tua app riceva solo le richieste inviate dal bilanciatore del carico (e dalla VPC, se la utilizzi). In caso contrario, gli utenti possono utilizzare URL di App Engine per bypassare il bilanciatore del carico, Google Cloud Armor criteri di sicurezza, certificati SSL e chiavi private che vengono trasmessi tramite il bilanciatore del carico.
Mappatura di un dominio personalizzato alla tua app
Nella console Google Cloud, vai alla scheda Impostazioni applicazione dell' Impostazioni di App Engine.
Vai a Impostazioni applicazione
Se non devi modificare il referrer predefinito dell'API Account Google, passa al passaggio successivo.
Se devi attivare l'autenticazione di Google Workspace per il tuo dominio personalizzato, fai clic su Modifica per modificare il referrer dell'API Account Google. Nel menu a discesa Autenticazione Google, seleziona Dominio Google Workspace, quindi aggiungi il tuo dominio, ad esempio
example.com
, nel campo vuoto.Nella console Google Cloud, vai alla scheda Domini personalizzati Impostazioni di App Engine.
Fai clic su Aggiungi un dominio personalizzato.
Se il tuo dominio è già verificato, viene visualizzato nella sezione Seleziona il dominio da utilizzare. Seleziona il dominio dal menu a discesa e fai clic su Continua.
Se non hai ancora verificato il tuo dominio, procedi nel seguente modo:
- Seleziona Verifica un nuovo dominio dal menu a discesa.
Inserisci il tuo nome di dominio semplice (ad esempio "example.com") e fai clic su Verifica.
Anche se vuoi mappare un sottodominio, ad esempio "www.sottodominio.example.com", inserisci il nome di dominio semplice da verificare proprietà.
Tieni presente che i nomi di dominio devono essere inferiori a 64 byte.
Inserisci le informazioni nella finestra Search Console visualizzata. Per assistenza sull'utilizzo di Search Console, consulta Guida di Search Console
Dopo aver completato i passaggi in Search Console, torna alla pagina Aggiungi un nuovo dominio personalizzato nella console Google Cloud.
Nella sezione Punta il dominio a [ID progetto], specifica il dominio e i sottodomini che vuoi mappare.
Ti consigliamo di mappare il dominio senza nome e il sottodominio
www
. Puoi aggiungi altri sottodomini, se necessario.Dopo aver aggiunto tutte le mappature desiderate, fai clic su Salva mapping.
Fai clic su Continua per visualizzare i record DNS del tuo dominio.
Puoi recuperare questi record in qualsiasi momento nella scheda Domini personalizzati della pagina Impostazioni di App Engine.
Accedi al sito web del tuo registrar di domini e aggiorna i record DNS con i record visualizzati nel passaggio precedente.
Aggiornamento dei record DNS nel registrar dei domini
Dopo aver mappato il servizio a un dominio personalizzato in App Engine, devi aggiornare i tuoi record DNS nel registrar del dominio. Per praticità, App Engine genera e visualizza i record DNS che devi inserire.
Recupera le informazioni del record DNS per le mappature dei tuoi domini:
Nella console Google Cloud, vai alla scheda Domini personalizzati della pagina Impostazioni di App Engine. La pagina elenca i record DNS per tutti i domini che hai mappato alla tua app.
Accedi al tuo account nel registrar del dominio e apri il DNS di configurazione del deployment.
Individua la sezione dei record host della pagina di configurazione del tuo dominio e aggiungi ciascuno dei record DNS che hai recuperato quando hai mappato il tuo dominio alla tua app.
Inserisci le seguenti informazioni nei campi del record:
- Tipo di record: inserisci il tipo di record visualizzato nel record DNS creato da Google per te (
A
,AAAA
oCNAME
). Nome del record:
- Nei record
A
oAAAA
, inserisci@
- Nei record
CNAME
, inserisci un nome di dominio di terzo livello. Ad esempio: inserisciwww
per mappare il sottodominiowww.example.com
.
- Nei record
Tieni presente che se utilizzi Cloud DNS, non è necessario aggiungere un simbolo @ quando crei un record
A
per il dominio personalizzato principale (example.com). Tuttavia, potrebbe essere necessario specificare un simbolo @ per altri provider DNS come GoDaddy.TTL: specifica un TTL in base alle tue esigenze.
Dati: inserisci i dati del record (rrdata) visualizzati nel record DNS creato da Google per te.
- Nei record
A
oAAAA
, i dati del record sono un indirizzo IP - Nei record
CNAME
, i dati del record sono un nome di dominio
- Nei record
- Tipo di record: inserisci il tipo di record visualizzato nel record DNS creato da Google per te (
Salva le modifiche nella pagina di configurazione DNS dell'account del tuo dominio. Nella maggior parte dei casi, queste modifiche vengono applicate in pochi minuti, ma in alcuni casi possono essere necessarie fino a diverse ore, a seconda del registrar e del Time-To-Live (TTL) di eventuali record DNS precedenti per il tuo dominio. Puoi utilizzare uno dei seguenti
dig
, come questa versione online didig
, per confermare che i record DNS sono stati aggiornati correttamente.Verifica che l'operazione sia andata a buon fine visitando il servizio al suo nuovo URL, ad esempio
https://www.example.com
. Tieni presente che l'emissione del certificato SSL automatico può richiedere diversi minuti.
Delegare la proprietà ad altri utenti o account di servizio Google Cloud
Se devi delegare la proprietà del tuo dominio ad altri utenti o servizi , puoi aggiungere l'autorizzazione tramite la pagina Search Console. Per visualizzare un elenco di account di servizio, apri la pagina Account di servizio nella console Google Cloud
Per aggiungere le autorizzazioni tramite Search Console:
Apri la verifica di Search Console.
In Proprietà, fai clic sul dominio per cui vuoi aggiungere un account utente o di servizio.
Vai a Impostazioni dal riquadro laterale.
In Impostazioni generali, fai clic su Utenti e autorizzazioni per trovare i proprietari del tuo dominio.
Fai clic su Aggiungi utente e inserisci l'ID email dell'utente. Seleziona l'autorizzazione richiesta per concedere utente. Per maggiori dettagli sulle autorizzazioni, vedi Gestire proprietari, utenti e autorizzazioni.
Fai clic su Aggiungi per delegare la proprietà all'utente.
Utilizzo dei sottodomini
Se configuri una mappatura dei sottodomini con caratteri jolly per il tuo dominio personalizzato, la tua applicazione gestisce le richieste per qualsiasi sottodominio corrispondente.
- Se l'utente visita un dominio che corrisponde al nome di una versione dell'applicazione o al nome di un servizio, l'applicazione serve quella versione.
- Se l'utente visita un dominio che corrisponde al nome di un servizio, l'applicazione lo fornisce.
- Esiste un limite di 20 certificati SSL gestiti alla settimana per ogni dominio di base. Se raggiungi il limite, App Engine continua a tentare di emettere i certificati gestiti finché non sono state soddisfatte tutte le richieste.
Mappature con caratteri jolly
Puoi utilizzare i caratteri jolly per mappare i sottodomini a qualsiasi livello, a partire dai sottodomini di terzo livello. Ad esempio, se il tuo dominio è example.com
e inserisci testo in
campo dell'indirizzo web:
- Se inserisci
*.example.com
, tutti i sottodomini diexample.com
vengono mappati alla tua app. - Se inserisci
*.private.example.com
, tutti i sottodomini diprivate.example.com
vengono mappati alla tua app. - Se inserisci
*.nichol.sharks.nhl.example.com
, vengono mappati tutti i sottodomini dinichol.sharks.nhl.example.com
alla tua app. - Se inserisci
*.excogitate.system.example.com
, tutti i sottodomini diexcogitate.system.example.com
vengono mappati alla tua app.
Puoi utilizzare le mappature con caratteri jolly con i servizi in App Engine utilizzando il
file dispatch.yaml
per definire l'instradamento delle richieste a servizi specifici.
Se utilizzi Google Workspace con altri sottodomini
nel tuo dominio, ad esempio sites
e mail
, queste mappature hanno una priorità maggiore
e vengono abbinati per primi prima che venga eseguita qualsiasi mappatura con caratteri jolly. Inoltre, se
altre app di App Engine sono mappate ad altri sottodomini,
Inoltre, le mappature hanno una priorità maggiore rispetto a qualsiasi mappatura con caratteri jolly.
Alcuni provider DNS potrebbero non funzionare con la mappatura dei sottodomini con caratteri jolly. In particolare, un provider DNS deve consentire i caratteri jolly nelle voci host CNAME
.
Le regole di routing con caratteri jolly si applicano agli URL che contengono componenti per servizi, versioni e istanze, seguendo le regole di routing dei servizi per App Engine.
Eliminazione di domini personalizzati dall'app
Per eliminare una mappatura di dominio personalizzata dalla tua app, il tuo account deve disporre della
Ruolo Amministratore App Engine
(roles/appengine.appAdmin
) o un ruolo personalizzato contenente
Autorizzazione appengine.applications.update
.
Nella console Google Cloud, segui questi passaggi:
Vai alla scheda Domini personalizzati della pagina Impostazioni di App Engine.
Seleziona il nome di dominio personalizzato e fai clic su Elimina.
In alternativa, puoi utilizzare i comandi gcloud o l'API Admin per eliminare i domini personalizzati.
Risoluzione dei problemi
Se l'app mostra errori di autenticazione dopo aver configurato il dominio personalizzato con l'autenticazione del dominio Google Workspace, rimuovi la mappatura del dominio personalizzato e ripeti l'operazione i passaggi per mappare un dominio personalizzato alla tua app. Assicurati di configurare l'autenticazione del dominio Google Workspace prima configurando il mapping di domini personalizzato in App Engine.
Passaggi successivi
- Scopri come proteggere i tuoi domini personalizzati con SSL.
- Se vuoi che Cloud Load Balancing gestisca le richieste in arrivo al tuo dominio personalizzato, consulta Eseguire la migrazione del dominio personalizzato di App Engine a Cloud Load Balancing.