Untuk menggunakan nama domain tetap dalam mengakses Function Compute aplikasi atau fungsi di lingkungan produksi, atau untuk mencegah unduhan paksa saat mengakses pemicu HTTP, Anda dapat mengikat nama domain kustom ke aplikasi atau fungsi tersebut.
Skenario
Berikut adalah skenario umum di mana Anda perlu mengikat nama domain kustom ke aplikasi atau fungsi:
Anda telah membuat aplikasi web dan memigrasikannya ke Function Compute. Anda ingin pengguna mengakses aplikasi melalui nama domain tetap.
Anda telah membangun aplikasi web menggunakan Konsol Function Compute dan ingin menggunakan jalur berbeda dari nama domain untuk memicu berbagai fungsi dalam aplikasi.
Anda telah membuat aplikasi Stable Diffusion atau jenis aplikasi serupa di Pusat Aplikasi Serverless Function Compute dan ingin mengakses aplikasi melalui nama domain tetap.
Batasan
Pastikan nama domain dikonfigurasikan untuk di-hosting di wilayah yang sama dengan fungsi saat mengikat nama domain kustom ke fungsi.
Nama domain kustom bersifat case-sensitive. Gunakan nama domain persis yang telah menerima pendaftaran Penyedia Konten Internet (ICP).
Anda dapat mengonfigurasi nama domain wildcard dan nama domain standar. Nama domain yang mengandung karakter Cina tidak didukung.
Cara kerjanya
Prasyarat
Fungsi atau aplikasi telah dibuat. Untuk informasi lebih lanjut, lihat Buat Fungsi dan Buat Aplikasi.
Mengikat nama domain kustom ke aplikasi berarti menghubungkannya ke fungsi-fungsi yang dibuat dalam aplikasi tersebut. Anda dapat menemukan sumber daya fungsi yang secara otomatis dibuat saat pembuatan aplikasi di bagian Resource Information halaman Environment Details aplikasi. Klik nama fungsi untuk pergi ke halaman Detail Fungsinya.

Nama domain kustom telah disiapkan dan memiliki pendaftaran ICP di sistem Pendaftaran ICP Alibaba Cloud atau mencakup Alibaba Cloud sebagai penyedia layanan dalam informasi pendaftarannya.
Ajukan pendaftaran ICP untuk nama domain sesuai dengan penyedia layanan dan akun terkait dengan domain tersebut. Prosesnya bervariasi tergantung pada cara nama domain didaftarkan.
Nama domain yang didaftarkan oleh akun Alibaba Cloud saat ini
Ajukan pendaftaran ICP untuk domain di Sistem Pendaftaran ICP Alibaba Cloud. Untuk informasi lebih lanjut, lihat Proses Pendaftaran ICP.
Nama domain yang didaftarkan oleh akun Alibaba Cloud lainnya
Gunakan akun Alibaba Cloud yang digunakan untuk mendaftarkan nama domain untuk mendapatkan pendaftaran ICP. ajukan pendaftaran ICP di Sistem Pendaftaran ICP Alibaba Cloud. Untuk informasi lebih lanjut, lihat Proses Pendaftaran ICP.
Nama domain yang didaftarkan oleh akun non-Alibaba Cloud
Jika nama domain Anda telah memperoleh pendaftaran ICP melalui penyedia layanan lain, tambahkan Alibaba Cloud ke informasi pendaftaran sebagai penyedia layanan. Ini dapat dilakukan melalui Sistem Pendaftaran ICP Alibaba Cloud.
CatatanPendaftaran ICP tidak diperlukan untuk nama domain kustom yang terikat pada fungsi di China (Hong Kong) atau wilayah di luar China.
Anda dapat memeriksa registrar nama domain di WHOIS.
Anda dapat memeriksa apakah nama domain milik akun Alibaba Cloud saat ini di Konsol DNS Alibaba Cloud (DNS).
1. Tambahkan nama domain kustom
Masuk ke Konsol Function Compute. Di panel navigasi sisi kiri, pilih . Pada halaman yang muncul, pilih wilayah dan klik Add Custom Domain Name.
PentingAnda hanya dapat mengikat nama domain kustom ke fungsi yang termasuk dalam wilayah yang sama dengan nama domain kustom tersebut.

Di halaman Add Custom Domain Name, masukkan nama domain kustom yang telah memperoleh pendaftaran ICP di Sistem Pendaftaran ICP Alibaba Cloud atau informasi pendaftaran ICP-nya mencakup Alibaba Cloud sebagai penyedia layanan. Nama domain tunggal, seperti
www.aliyun.com, dan nama domain wildcard, seperti*.aliyun.com, didukung.
Di panel Add Custom Domain Name, dapatkan rekaman Internet CNAME atau Internal CNAME. Tabel berikut menjelaskan format rekaman CNAME.
Tipe CNAME
Format
Contoh
Internet CNAME
<account_id>.<region_id>.fc.aliyuncs.comJika ID akun Alibaba Cloud Anda adalah 1413397765**** dan fungsi atau aplikasi berada di wilayah China (Hangzhou),
Internet CNAME adalah
1413397765****.cn-hangzhou.fc.aliyuncs.com.Internal CNAME
<account_id>.<region_id>-internal.fc.aliyuncs.cominternal CNAME adalah
1413397765****.cn-hangzhou-internal.fc.aliyuncs.com.
2. Konfigurasikan resolusi nama domain
Masuk ke Konsol DNS dan atur resolusi nama domain yang diajukan ke CNAME dari Function Compute. Untuk informasi lebih lanjut, lihat Memulai Cepat.

Sebagaimana ditunjukkan pada gambar sebelumnya, atur Record Value menjadi CNAME dari Function Compute yang diperoleh di langkah sebelumnya. Jika Anda ingin mengakses nama domain melalui Internet, atur Record Value menjadi Internet CNAME dari Function Compute.
3. Lanjutkan menambahkan nama domain kustom
Kembali ke halaman Add Custom Domain Name di langkah 1, konfigurasikan parameter berikut, lalu klik Create.
3.1 Pengaturan Routing
Jika aplikasi Anda berisi beberapa fungsi, Anda dapat mengonfigurasi pemetaan antara jalur dan fungsi. Jalur permintaan yang berbeda dapat memicu fungsi yang berbeda. Untuk informasi lebih lanjut, lihat bagian Aturan Pencocokan Rute dari topik ini.
Jika Anda ingin menulis ulang URI permintaan yang cocok dengan jalur tertentu berdasarkan aturan, lihat Konfigurasikan Kebijakan Penulisan Ulang (Tinjauan Publik).

3.2 (Opsional) Pengaturan HTTPS
Untuk mengaktifkan akses HTTPS ke nama domain kustom, konfigurasikan parameter berikut.

Parameter | Deskripsi |
HTTPS | Tentukan apakah akan mengaktifkan HTTPS. Setelah Anda mengaktifkan HTTPS, nama domain kustom dapat diakses melalui HTTP dan HTTPS. Jika Anda menonaktifkan HTTPS, nama domain kustom hanya dapat diakses melalui HTTP. Catatan Anda juga dapat memilih kotak centang Redirects HTTP Requests to HTTPS untuk hanya mengizinkan permintaan HTTPS mengakses nama domain kustom. Function Compute mengarahkan permintaan yang diakses melalui HTTP ke HTTPS. |
Certificate Type | Tipe sertifikat yang ingin Anda unggah. Nilai valid:
Catatan Sertifikat yang ingin Anda unggah tidak boleh melebihi 20 KB ukurannya. Kunci sertifikat tidak boleh melebihi 4 KB ukurannya. |
TLS Version | Versi protokol keamanan transport layer (TLS) yang digunakan oleh fungsi. Catatan Setelah Anda memilih versi TLS, Anda juga dapat memilih Enable Support for TLS1.3 untuk mengaktifkan TLS 1.3. |
Cipher Suite | Suite algoritma sandi TLS. Jika Anda meninggalkan parameter ini kosong, semua suite sandi dipilih. Nilai valid:
Penting
|
3.3 (Opsional) Pengaturan Otentikasi
Tidak Ada Otentikasi: Tidak diperlukan otentikasi untuk permintaan HTTP, dan akses anonim didukung. Siapa pun dapat memulai permintaan HTTP untuk memanggil fungsi Anda.
Verifikasi Tanda Tangan: Diperlukan otentikasi tanda tangan pada permintaan HTTP. Untuk informasi lebih lanjut, lihat Konfigurasikan Otentikasi Tanda Tangan untuk Nama Domain Kustom.
Otentikasi JWT: Diperlukan otentikasi JWT pada permintaan HTTP. Untuk informasi lebih lanjut, lihat Konfigurasikan Otentikasi JWT untuk Nama Domain Kustom.

3.4 (Opsional) Pengaturan WAF
WAF mengidentifikasi lalu lintas berbahaya dalam fungsi dan aplikasi, membersihkan dan menyaring lalu lintas berbahaya, serta mengembalikan lalu lintas normal ke fungsi backend untuk melindungi fungsi Anda dari intrusi berbahaya. Untuk informasi lebih lanjut, lihat Aktifkan Perlindungan WAF.

3.5 (Opsional) Pengaturan CDN
Setelah Anda mengikat nama domain kustom ke aplikasi web, Anda dapat menggunakan nama domain kustom sebagai domain asal dan menambahkan nama domain yang dipercepat ke dalamnya. Kemudian, Anda dapat mengonfigurasi CNAME untuk nama domain yang dipercepat. Dengan cara ini, percepatan CDN diaktifkan untuk nama domain kustom. Aplikasi yang diterapkan di Function Compute berfungsi sebagai server asal, dan konten sumber dipublikasikan ke node tepi. Dengan cara ini, pengguna akhir dapat membaca data dengan efisiensi tinggi. Ini secara efektif mengurangi latensi dan meningkatkan kualitas layanan.
Atur Percepatan CDN menjadi Aktifkan. Tentukan CDN-Accelerated Domain Name kustom dan klik Create.
PentingJika Anda mengaktifkan percepatan CDN, Anda akan dikenakan biaya untuk lalu lintas Internet. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan.
Nama domain kustom dan nama domain yang dipercepat tidak boleh sama. Untuk menghemat sumber daya nama domain, Anda dapat mengatur Nama Domain yang Dipercepat CDN menjadi nama domain tingkat dua (subdomain) dari nama domain kustom Anda. Sebagai contoh, jika Anda mengatur nama domain kustom menjadi
example.com, Anda dapat mengatur Nama Domain yang Dipercepat CDN menjadifast.example.com.
Klik nama domain kustom yang telah Anda konfigurasikan. Di bagian CDN Acceleration Settings halaman detail nama domain kustom, klik CDN Settings di kolom Actions untuk pergi ke Konsol CDN Alibaba Cloud dan mendapatkan CNAME yang ditetapkan untuk nama domain yang dipercepat CDN oleh Alibaba Cloud CDN.


Gambar sebelumnya menunjukkan contoh. CNAME mengikuti format
Nama domain yang dipercepat.w.kunlun**.com. Contoh:fast.example.com.w.kunlunle.com.Masuk ke Konsol DNS, temukan nama domain kustom Anda, lalu arahkan rekaman Sistem Nama Domain (DNS) dari nama domain tersebut ke CNAME yang ditetapkan untuk menerapkan percepatan. Untuk informasi lebih lanjut, lihat Memulai Cepat.

Gambar sebelumnya menunjukkan contoh. Atur Hostname menjadi tingkat pertama dari nama domain yang dipercepat. Dalam contoh ini, nilainya adalah
fast. Atur Record Value menjadi nama domain yang dipercepat yang Anda konfigurasikan di langkah sebelumnya.
4. Verifikasi nama domain kustom
4.1 Verifikasi apakah nama domain kustom dapat diakses
Metode 1: Jalankan perintah
curl URL, Contoh:curl example.com/login.Metode 2: Gunakan browser.
Masukkan URL permintaan di bilah alamat browser dan tekan tombol Enter untuk memeriksa apakah fungsi yang ditentukan dipanggil.
4.2 (Opsional) Verifikasi nama domain yang dipercepat
Gunakan nama domain yang dipercepat CDN yang Anda konfigurasikan di 3.5 (Opsional) Pengaturan CDN di browser untuk mengakses aplikasi. Kemudian, buka alat pengembang dan periksa nilai pengembalian bidang X-Cache dalam respons untuk menentukan apakah nama domain yang dipercepat berfungsi.
Nilai pengembalian bidang X-Cache menunjukkan efek sebenarnya dari kebijakan cache CDN. "MISS" dalam nilai menunjukkan bahwa akses pertama ke Point of Presence (POP) CDN gagal dan sumber daya perlu diminta dari server asal. Jika sumber daya yang hilang diperoleh dari server asal, sumber daya tersebut disimpan di POP. Nilai bidang X-Cache dalam permintaan berikutnya untuk sumber daya dimulai dengan HIT, yang menunjukkan bahwa sumber daya yang diminta telah disimpan di dan dilayani dari POP.
Akses Pertama Gagal | Akses Berikutnya Berhasil |
|
|
Suite Sandi
Suite Sandi Kuat dan Lemah
Pemetaan antara versi TLS dan suite sandi
Pemetaan antara nama suite sandi RFC dan OpenSSL
Aturan Pencocokan
Aturan Pencocokan Rute
Anda harus mengonfigurasi pemetaan antara jalur dan fungsi saat mengikat nama domain kustom. Dengan cara ini, permintaan dari jalur yang berbeda dapat memicu fungsi yang berbeda. Function Compute mendukung pencocokan tepat dan pencocokan fuzzy untuk jalur. Berikut adalah aturan pencocokan:
Pencocokan Tepat: Fungsi hanya dipicu jika jalur permintaan persis sama dengan jalur yang ditentukan.
Sebagai contoh, Anda telah membuat rute dengan jalur /a, fungsi yang sesuai adalah f1, dan versi yang sesuai adalah 1. Dalam hal ini, hanya permintaan dari jalur /a yang dapat memicu Fungsi 1 Versi 1.
Pencocokan Fuzzy: Anda dapat menambahkan tanda bintang (*) sebagai wildcard ke jalur.
Sebagai contoh, Anda telah membuat rute dengan jalur /login/*, fungsi yang sesuai adalah f2, dan versi yang sesuai adalah 1. Permintaan dari jalur yang dimulai dengan /login/, seperti /login/a dan /login/b/c/d, dapat memicu Fungsi 2 Versi 1.
Jika beberapa rute dikonfigurasikan untuk nama domain kustom, pencocokan tepat lebih diutamakan daripada pencocokan fuzzy.
Aturan kecocokan awalan terpanjang (LPM) berlaku saat pencocokan fuzzy dilakukan.
Sebagai contoh, jalur /login/a/* dan jalur /login/* dikonfigurasikan untuk nama domain kustom
example.com, dan URL permintaan adalah example.com/login/a/b. URL permintaan cocok dengan jalur yang dikonfigurasikan. Namun, jalur /login/a/* digunakan berdasarkan aturan kecocokan awalan terpanjang (LPM).
Contoh
Sebagai contoh, nama domain kustom adalah example.com dan lima aturan routing dikonfigurasikan berdasarkan langkah-langkah yang dijelaskan dalam topik ini. Tabel berikut mencantumkan aturan routing.
Aturan Routing | Jalur | Fungsi | Versi |
Aturan Routing 1 | / | f1 | 1 |
Aturan Routing 2 | /* | f2 | 2 |
Aturan Routing 3 | /login | f3 | 3 |
Aturan Routing 4 | /login/a | f4 | 4 |
Aturan Routing 5 | /login/* | f5 | 5 |
Tabel berikut menjelaskan kecocokan akhir.
URL Permintaan | Fungsi yang Cocok | Versi yang Cocok | Jalur yang Cocok |
example.com | f1 | 1 | / |
example.com/user | f2 | 2 | /* |
example.com/login | f3 | 3 | /login |
example.com/login/a | f4 | 4 | /login/a |
example.com/login/a/b | f5 | 5 | /login/* |
example.com/login/b | f5 | 5 | /login/* |
Aturan Pencocokan Nama Domain
Function Compute mencocokkan nama domain berdasarkan informasi nama domain dalam permintaan Anda dan meneruskan permintaan ke fungsi yang sesuai dengan nama domain yang cocok. Function Compute mendukung pencocokan tepat dan pencocokan fuzzy untuk nama domain. Berikut adalah aturan pencocokan:
Pencocokan Tepat: Fungsi yang sesuai dengan nama domain hanya dapat dipicu jika nama domain permintaan persis cocok dengan nama domain kustom yang Anda buat.
Pencocokan Fuzzy: Nama domain wildcard didukung. Fungsi dapat dipicu jika nama domain permintaan cocok dengan nama domain kustom yang Anda buat berdasarkan wildcard. Maksimal satu karakter wildcard (*) dapat terkandung dalam nama domain, dan karakter wildcard harus ditempatkan di awal nama domain.
Jika permintaan cocok dengan nama domain tunggal dan nama domain wildcard pada saat yang sama, permintaan tersebut diteruskan ke fungsi yang sesuai dengan nama domain tunggal.
Dalam pencocokan fuzzy, nama domain wildcard hanya dapat mencocokkan nama domain pada tingkat yang sama. Sebagai contoh,
*.aliyun.comdapat mencocokkanfc.aliyun.com, tetapi tidakcn-hangzhou.fc.aliyun.com.*.aliyun.comdanfc.aliyun.comadalah domain tingkat tiga dancn-hangzhou.fc.aliyun.comadalah domain tingkat empat.
Contoh
Tabel berikut menunjukkan hasil nama domain permintaan yang cocok dengan nama domain yang ada berikut ini: fc.aliyun.com, *.aliyun.com, dan *.fc.aliyun.com.
Nama Domain Permintaan | Nama Domain yang Cocok |
fc.aliyun.com | fc.aliyun.com |
fnf.aliyun.com | *.aliyun.com |
cn-hangzhou.fc.aliyun.com | *.fc.aliyun.com |
accountID.cn-hangzhou.fc.aliyun.com | Tidak Ada |
Tanya Jawab Umum
Bisakah titik akhir publik pemicu HTTP digunakan dalam lingkungan produksi?
Apa yang harus saya lakukan jika kesalahan 502 Bad Gateway dilaporkan saat saya mengakses nama domain kustom?
Apa yang harus saya lakukan jika kesalahan dilaporkan saat saya menggunakan nama domain karakter Cina untuk mengonfigurasi nama domain kustom?
Bagaimana cara menyelesaikan masalah unduhan paksa saat saya mengakses nama domain melalui browser?
Apa yang harus saya lakukan jika terjadi pengalihan 301 saat saya mengakses nama domain yang dipercepat?
Apa yang harus saya lakukan jika saya tidak dapat memilih fungsi yang ada saat saya mengonfigurasi rute?
Apa yang harus saya lakukan jika suatu fungsi tidak dapat dipicu menggunakan route?
Diagnostik
Jika terjadi kesalahan saat mengikat nama domain kustom, server akan mengembalikan pesan kesalahan. Tabel berikut menjelaskan kode kesalahan umum untuk membantu Anda dengan cepat mengidentifikasi dan menyelesaikan masalah.
Kode kesalahan | Kode status HTTP | Pesan kesalahan | Penyebab |
InvalidICPLicense | 400 | nama domain '%s' belum memiliki lisensi ICP, atau lisensi ICP tidak termasuk Aliyun sebagai penyedia layanan | Nama domain tidak memiliki pendaftaran ICP atau informasi pendaftaran ICP tidak mencakup Alibaba Cloud sebagai penyedia layanan. |
DomainNameNotResolved | 400 | nama domain '%s' belum diarahkan ke titik akhir FC Anda, titik akhir yang diharapkan adalah '%s' | Tidak ada CNAME yang dikonfigurasi untuk nama domain agar mengarah ke titik akhir yang ditentukan. Anda dapat memeriksa pengaturan CNAME dengan menjalankan perintah dig atau masuk ke server DNS. |
DomainRouteNotFound | 404 | tidak ditemukan rute dalam domain '%s' untuk jalur '%s' | Tidak ada fungsi yang dikonfigurasikan untuk jalur yang ditentukan. |
TriggerNotFound | 404 | pemicu 'http' tidak ada dalam layanan '%s' dan fungsi '%s' | Tidak ada Pemicu HTTP yang dikonfigurasikan untuk fungsi yang terikat ke nama domain kustom. |
DomainNameNotFound | 404 | nama domain '%s' tidak ada | Nama domain yang ingin Anda periksa tidak ada. |
DomainNameAlreadyExists | 409 | nama domain '%s' sudah ada | Nama domain yang ingin Anda ikat sudah ada. |
Jika masalah tetap berlanjut, bergabunglah dengan grup DingTalk 64970014484 untuk mendapatkan dukungan teknis.

