Anda dapat menggunakan domain kustom, alih-alih alamat default yang disediakan App Engine untuk aplikasi Anda.
Untuk menggunakan domain kustom, petakan domain ke aplikasi Anda, lalu update data DNS Anda. Anda dapat memetakan domain tanpa awalan www, seperti example.com
atau subdomain, seperti subdomain.example.com
. Anda juga dapat menggunakan karakter pengganti untuk memetakan subdomain.
Secara default, saat Anda memetakan domain ke aplikasi, App Engine akan mengeluarkan sertifikat terkelola untuk koneksi SSL untuk HTTPS. Untuk informasi selengkapnya tentang penggunaan SSL dengan domain kustom, termasuk cara menggunakan sertifikat SSL Anda sendiri, lihat Mengamankan domain kustom dengan SSL.
Penggunaan domain kustom dapat menambahkan latensi yang signifikan pada respons yang dikirim App Engine ke pengguna aplikasi Anda di beberapa region. Regionnya adalah sebagai berikut:
- us-west2
- us-east4
- northamerica-northeast1
- southamerica-east1
- europe-west2
- europe-west3
- asia-south1
- asia-northeast1
- australia-southeast1
Domain kustom App Engine menggunakan kumpulan alamat IP bersama untuk semua aplikasi. Jika ingin menggunakan alamat IP yang hanya dipetakan ke domain, Anda harus menyiapkan load balancer dengan App Engine. Cara ini dapat mengurangi masalah frontend domain yang menyebabkan permintaan untuk aplikasi A dalam sertifikat SNI mungkin dirutekan ke aplikasi B di header Host HTTP.
Sebelum memulai
Jika Anda belum memiliki domain, belilah dulu. Anda dapat menggunakan registrar nama domain; jika Anda menggunakan Google Domains, domain akan otomatis diverifikasi untuk App Engine dan Anda tidak perlu melalui proses verifikasi domain.
Untuk menambahkan atau mengedit pemetaan domain kustom, akun Anda harus memiliki peran Admin App Engine (
roles/appengine.appAdmin
) atau peran khusus yang berisi izinappengine.applications.get
.Jika Anda menggunakan Cloud Load Balancing dan NEGS serverless untuk merutekan traffic ke aplikasi App Engine, sebaiknya petakan domain kustom Anda ke load balancer, alih-alih langsung ke aplikasi, dan gunakan sertifikat SSL yang dibuat untuk load balancer. Dengan demikian, Anda tidak perlu mengelola sertifikat SSL terpisah untuk setiap aplikasi serverless. Selain itu, dengan Cloud Load Balancing, Anda dapat menetapkan kebijakan SSL yang mengontrol fitur SSL yang dinegosiasikan oleh load balancer Anda dengan klien. Untuk informasi selengkapnya, lihat halaman berikut:
- Menggunakan sertifikat SSL yang dikelola Google
- Menggunakan sertifikat SSL yang dikelola sendiri
- Kebijakan SSL
Perhatikan batasan berikut:
- Sebaiknya gunakan kontrol masuk sehingga aplikasi Anda hanya menerima permintaan yang dikirim dari load balancer (dan VPC jika Anda menggunakannya). Jika tidak, pengguna dapat menggunakan URL App Engine aplikasi Anda untuk mengabaikan load balancer, kebijakan keamanan Google Cloud Armor, sertifikat SSL, dan kunci pribadi yang diteruskan melalui load balancer.
Memetakan domain kustom ke aplikasi Anda
Di Konsol Google Cloud, buka tab Application settings di halaman Settings App Engine.
Buka halaman Application settings
Jika Anda tidak perlu mengubah Perujuk Google Accounts API default, lanjutkan ke langkah berikutnya.
Jika Anda perlu mengaktifkan autentikasi Google Workspace untuk domain kustom, klik Edit untuk mengubah Perujuk Google Accounts API. Di menu drop-down Google Authentication, pilih Google Workspace domain, lalu tambahkan domain Anda seperti
example.com
di kolom kosong.Di Konsol Google Cloud, buka tab Custom Domains di halaman Settings App Engine.
Klik Add a custom domain.
Jika domain Anda sudah diverifikasi, domain akan muncul di bagian Select the domain you want to use. Pilih domain dari menu drop-down, lalu klik Continue.
Jika Anda belum memverifikasi domain, lakukan hal berikut:
- Pilih Verify a new domain dari menu drop-down.
Masukkan nama domain tanpa awalan www (seperti "example.com"), lalu klik Verify.
Meskipun Anda hanya ingin memetakan subdomain, seperti "www.subdomain.example.com", masukkan nama domain tanpa awalan www untuk memverifikasi kepemilikan.
Perhatikan bahwa nama domain harus kurang dari 64 byte.
Masukkan informasi di jendela Search Console yang muncul. Untuk mendapatkan bantuan dalam menggunakan Search Console, lihat Bantuan Search Console
Setelah Anda menyelesaikan langkah-langkah di Search Console, kembali ke halaman Add a new custom domain di Konsol Google Cloud.
Di bagian Point your domain to [project-ID], tentukan domain dan subdomain yang ingin Anda petakan.
Sebaiknya petakan domain tanpa awalan www dan subdomain
www
. Anda dapat menambahkan lebih banyak subdomain jika perlu.Setelah menambahkan semua pemetaan yang diinginkan, klik Save mappings.
Klik Continue untuk melihat data DNS domain Anda.
Anda dapat mengambil data ini kapan saja di tab Custom Domains di halaman Settings App Engine.
Login ke situs registrar domain Anda, lalu update data DNS dengan data yang ditampilkan di langkah sebelumnya.
Memperbarui data DNS di registrar domain Anda
Setelah memetakan layanan ke domain kustom di App Engine, Anda harus mengupdate data DNS di registrar domain. Untuk mempermudah, App Engine membuat dan menampilkan data DNS yang perlu Anda masukkan.
Ambil informasi data DNS untuk pemetaan domain:
Di Konsol Google Cloud, buka tab Custom Domains di halaman Settings App Engine. Halaman ini mencantumkan data DNS untuk semua domain yang telah dipetakan ke aplikasi Anda.
Login ke akun Anda di registrar domain, lalu buka halaman konfigurasi DNS.
Cari bagian data host di halaman konfigurasi domain, lalu tambahkan setiap data DNS yang telah diambil saat memetakan domain ke aplikasi Anda.
Masukkan informasi berikut di kolom data:
- Jenis data: Masukkan jenis data yang ditampilkan dalam data DNS yang dibuat Google untuk Anda (
A
, atauAAAA
, atauCNAME
). - Nama data:
- Dalam data
A
atauAAAA
, masukkan@
- Dalam data
CNAME
, masukkan nama domain level ketiga. Misalnya, masukkanwww
untuk memetakan subdomainwww.example.com
.
- Dalam data
- TTL: Menentukan TTL sesuai kebutuhan Anda.
- Data: Masukkan data record (rrdata) yang ditampilkan dalam data DNS yang dibuat oleh Google untuk Anda.
- Di data
A
atauAAAA
, datanya berupa alamat IP - Di data
CNAME
, datanya berupa nama domain
- Di data
- Jenis data: Masukkan jenis data yang ditampilkan dalam data DNS yang dibuat Google untuk Anda (
Simpan perubahan di halaman konfigurasi DNS untuk akun domain Anda. Umumnya, diperlukan waktu beberapa menit agar perubahan ini diterapkan, tetapi dalam beberapa kasus, diperlukan waktu hingga beberapa jam, bergantung pada registrar dan Time-To-Live (TTL) dari data DNS sebelumnya untuk domain Anda. Anda dapat menggunakan alat
dig
, seperti versidig
online ini, untuk mengonfirmasi bahwa data DNS telah berhasil diupdate.Uji kesuksesan dengan menjelajahi layanan Anda di URL baru, misalnya
https://www.example.com
. Perhatikan bahwa perlu waktu beberapa menit untuk menerbitkan sertifikat SSL otomatis.
Mendelegasikan kepemilikan kepada pengguna Google Cloud atau akun layanan lainnya
Jika perlu mendelegasikan kepemilikan domain ke pengguna atau akun layanan lain, Anda dapat menambahkan izin melalui halaman Search Console:
Di bagian Properties, klik domain yang ingin ditambahkan pengguna atau akun layanan.
Di akhir daftar Verified owners, klik Add an owner, lalu masukkan alamat email Akun Google atau ID akun layanan.
Untuk melihat daftar akun layanan, buka halaman Service Accounts di Konsol Google Cloud:
Menggunakan subdomain
Jika Anda menyiapkan pemetaan subdomain karakter pengganti untuk domain kustom, aplikasi Anda akan menampilkan permintaan untuk subdomain yang cocok.
- Jika pengguna menjelajahi domain yang cocok dengan nama versi aplikasi atau nama layanan, aplikasi akan menampilkan versi tersebut.
- Jika pengguna menjelajahi domain yang cocok dengan nama layanan, aplikasi akan menampilkan layanan tersebut.
- Ada batas 20 sertifikat SSL terkelola per minggu untuk setiap domain dasar. Jika batas tersebut tercapai, App Engine akan terus mencoba menerbitkan sertifikat terkelola hingga semua permintaan terpenuhi.
Pemetaan karakter pengganti
Anda dapat menggunakan karakter pengganti untuk memetakan subdomain di tingkat apa pun, mulai dari subdomain tingkat ketiga. Misalnya, jika domain Anda adalah example.com
dan Anda memasukkan teks di kolom alamat web:
- Memasukkan
*.example.com
akan memetakan semua subdomain dariexample.com
ke aplikasi Anda. - Memasukkan
*.private.example.com
akan memetakan semua subdomainprivate.example.com
ke aplikasi Anda. - Memasukkan
*.nichol.sharks.nhl.example.com
akan memetakan semua subdomainnichol.sharks.nhl.example.com
ke aplikasi Anda. - Memasukkan
*.excogitate.system.example.com
akan memetakan semua subdomainexcogitate.system.example.com
ke aplikasi Anda.
Anda dapat menggunakan pemetaan karakter pengganti dengan layanan di App Engine menggunakan file dispatch.yaml
untuk menentukan perutean permintaan ke layanan tertentu.
Jika Anda menggunakan Google Workspace dengan subdomain lain di domain Anda, seperti sites
dan mail
, pemetaan tersebut akan memiliki prioritas yang lebih tinggi dan dicocokkan terlebih dahulu, sebelum pemetaan karakter pengganti dilakukan. Selain itu, jika Anda memiliki aplikasi App Engine lain yang dipetakan ke subdomain lain, pemetaan tersebut juga memiliki prioritas yang lebih tinggi daripada pemetaan karakter pengganti lainnya.
Beberapa penyedia DNS mungkin tidak berfungsi dengan pemetaan subdomain karakter pengganti. Secara khusus, penyedia DNS harus mengizinkan karakter pengganti dalam entri host CNAME
.
Aturan perutean karakter pengganti berlaku untuk URL yang berisi komponen untuk layanan, versi, dan instance, dengan mengikuti aturan perutean layanan untuk App Engine.
Menghapus domain kustom dari aplikasi Anda
Untuk menghapus pemetaan domain kustom dari aplikasi, akun Anda harus memiliki peran Admin App Engine (roles/appengine.appAdmin
) atau peran khusus yang berisi izin appengine.applications.update
.
Di konsol Google Cloud, lakukan hal berikut:
Buka tab Custom Domains di halaman Settings App Engine.
Pilih nama domain kustom, lalu klik Delete.
Anda juga dapat menggunakan perintah gcloud atau Admin API untuk menghapus domain kustom.
Pemecahan masalah
Jika aplikasi Anda menampilkan error autentikasi setelah mengonfigurasi domain kustom dengan autentikasi domain G Suite, hapus pemetaan domain kustom dan ulangi langkah Memetakan domain kustom ke aplikasi Anda. Pastikan untuk mengonfigurasi autentikasi domain G Suite Anda sebelum mengonfigurasi pemetaan domain kustom di App Engine.
Langkah berikutnya
Mengamankan domain kustom Anda dengan SSL.