Anda dapat mengonfigurasi nama domain sebagai pemicu untuk mengakses Functions and Pages melalui jalur publik kustom. Edge Security Acceleration (ESA) menyediakan dua metode untuk mengarahkan permintaan HTTP atau HTTPS ke layanan Functions and Pages Anda: Custom Domains dan Routes.
Sebelum memulai
Baik Custom Domains maupun Routes memerlukan situs aktif dalam akun Anda.
Situs aktif adalah situs yang memiliki paket berlangganan dan terhubung menggunakan rekaman NS atau CNAME.
Pilih metode konfigurasi yang tepat

Atribut | Custom Domains | Routes |
Tujuan utama | Meneruskan semua permintaan dari nama domain tertentu, seperti | Hanya meneruskan permintaan yang sesuai dengan jalur yang telah ditentukan, seperti |
Cakupan | Seluruh traffic di bawah nama domain | Bagian traffic yang sesuai dengan aturan |
Metode konfigurasi | Sederhana, konfigurasi satu langkah | Fleksibel. Memerlukan konfigurasi aturan pencocokan. |
Skenario penggunaan |
|
|
Gunakan binding domain
Gunakan Custom Domains untuk mengarahkan seluruh traffic dari nama domain ke layanan Functions and Pages tertentu guna diproses.
Fitur binding domain memungkinkan Anda menghubungkan layanan Functions and Pages ke nama domain situs Anda. Setelah nama domain di-bind, Anda dapat menggunakannya untuk langsung mengakses layanan Functions and Pages. Nama domain yang di-bind ke layanan Functions and Pages harus termasuk dalam situs aktif. Setelah Anda mengonfigurasi binding di Konsol, ESA secara otomatis menambahkan rekaman DNS untuk nama domain tersebut ke situs yang bersangkutan.
Masuk ke Konsol ESA. Di panel navigasi sebelah kiri, pilih . Klik layanan Functions and Pages yang ingin dikonfigurasi.
Klik tab Domain Names. Di bagian Custom Domains, klik Add Domain Name.

Masukkan nama domain yang ingin di-bind ke layanan Functions and Pages, misalnya
pages.example.com. Setelah nama domain ditambahkan, rekaman DNS baru dibuat untuk situs yang bersangkutan.CatatanNama domain baru mewarisi konfigurasi dari situsnya. Jika situs tidak memiliki sertifikat SSL/TLS, nama domain yang di-bind tidak dapat diakses melalui HTTPS. Untuk informasi lebih lanjut tentang cara mengaktifkan SSL/TLS untuk situs, lihat SSL/TLS.

Ikuti langkah-langkah sesuai jenis koneksi situs Anda:
Situs terhubung menggunakan NS setup
Jika situs Anda terhubung menggunakan NS record, tunggu hingga rekaman DNS berlaku. Proses ini memakan waktu sekitar satu menit. Kemudian, akses nama domain kustom yang baru di-bind, seperti
pages.example.com, di browser untuk melihat hasilnya.
Situs terhubung menggunakan CNAME setup
Jika situs Anda terhubung menggunakan CNAME record, Anda harus mengonfigurasi rekaman CNAME pada penyedia DNS Anda agar binding berlaku.
Klik View DNS Records di sebelah kanan nama domain kustom yang baru ditambahkan.

Salin nilai CNAME yang dihasilkan oleh ESA untuk rekaman DNS baru tersebut.

Buka penyedia DNS Anda dan tambahkan rekaman CNAME ke pengaturan DNS nama domain Anda:
Host Record: Masukkan awalan nama domain kustom. Dalam contoh ini, masukkan
pages.Record Type: Pilih
CNAME.Record Value: Tempel nilai CNAME yang disalin pada langkah sebelumnya.

Kembali ke Konsol ESA. Tunggu hingga CNAME Status berubah menjadi Configured.
Kemudian, akses nama domain kustom yang baru di-bind, seperti pages.example.com, di browser untuk melihat hasilnya.
Gunakan konfigurasi perutean
Anda dapat menggunakan perutean untuk meneruskan permintaan ke jalur URL tertentu ke layanan Functions and Pages. Metode ini memungkinkan shaping traffic dengan detail halus. Jika permintaan sesuai dengan pola URL yang dikonfigurasi, layanan Functions and Pages akan memprosesnya. Jika tidak, permintaan tersebut tetap mengikuti proses back-to-origin terakselerasi ESA. Misalnya, jika Anda mengonfigurasi aturan routing example.com/a* untuk situs example.com, semua permintaan ke jalur yang sesuai, seperti /a, /a1, dan /a2, diproses oleh layanan Functions and Pages. Permintaan ke jalur yang tidak sesuai, seperti /b, /c, dan /d, mengikuti proses back-to-origin atau caching standar.
Masuk ke Konsol ESA. Di panel navigasi sebelah kiri, pilih . Klik layanan Functions and Pages yang ingin dikonfigurasi.
Klik tab Domain Names. Di bagian Routes, klik Add Route.

Masukkan Routing Name. Di daftar Select Site, pilih situs target, misalnya
example.com.Pilih Routing Pattern:
Basic mode: Pola ini mencocokkan permintaan hanya berdasarkan URL, yang mencakup hostname dan path. Misalnya, Anda dapat mengonfigurasi semua permintaan dengan awalan URL
pages.example.comuntuk diarahkan ke layanan Functions and Pages:
Custom Pattern: Pola ini cocok untuk skenario yang memerlukan pencocokan logis kompleks berdasarkan beberapa kondisi, seperti header permintaan, cookie, dan metode permintaan. Anda dapat menambahkan beberapa kondisi pencocokan dan menentukan hubungan logis antara kondisi tersebut sebagai "meet all" atau "meet any". Misalnya, Anda dapat mengonfigurasi aturan yang meneruskan permintaan ke layanan Functions and Pages hanya jika
hostnamesama denganwww.example.comdan header permintaanUser-AgentmengandungMobile:
Akses jalur routing yang sesuai di browser untuk melihat hasilnya.

Jika Anda menggunakan basic mode dan memasukkan nama domain dengan awalan, seperti
*.example.comatauwww.example.com, catatan yang sesuai harus ada di bagian DNS Records di Konsol ESA. Anda juga dapat menambahkan catatan secara manual. Jika tidak, akses ke nama domain akan gagal.Jika beberapa aturan routing dikonfigurasi, aturan tersebut dicocokkan secara berurutan dari atas ke bawah. Setelah ditemukan kecocokan, aturan berikutnya tidak diperiksa.
Aturan pencocokan
Konfigurasi routing harus mencakup hostname domain dan URI path. Oleh karena itu, Anda tidak dapat mengonfigurasi aturan routing yang hanya berisi URI path, seperti
/path.Anda dapat menambahkan karakter wildcard (
*) di awal atau akhir konfigurasi routing untuk mencocokkan lebih banyak permintaan. Karakter wildcard*mencocokkan nol atau lebih karakter apa pun. Misalnya,example.com/*mencocokkan semua permintaan keexample.com.Konfigurasi routing bersifat case-sensitive. Misalnya,
example.com/adanexample.com/Aadalah dua aturan routing yang berbeda.Konfigurasi routing tidak mendukung karakter wildcard (
*) di tengah path atau di parameter. Misalnya,example.com/*/pathdanexample.com/path?param=1tidak diizinkan.Jika permintaan sesuai dengan beberapa aturan routing, aturan pertama yang cocok dalam daftar yang berlaku.
Mode bypass
Setelah Anda mengaktifkan mode bypass untuk aturan routing, ketika permintaan sesuai dengan kebijakan routing, permintaan tersebut dikirim ke layanan Functions and Pages sebagai sub-permintaan. Proses keseluruhan mode bypass adalah sebagai berikut:
Klien mengirim permintaan ke Titik kehadiran (POP) ESA.
Permintaan tersebut sesuai dengan kebijakan routing dan diteruskan ke layanan Functions and Pages untuk diproses. Di layanan Functions and Pages, Anda dapat melakukan operasi seperti logging dan otentikasi berdasarkan isi permintaan. Perhatikan bahwa saat mode bypass diaktifkan, badan permintaan tidak diteruskan ke layanan Functions and Pages.
Jika respons dari layanan Functions and Pages memiliki kode status
200, permintaan dilanjutkan ke langkah pemrosesan berikutnya. Jika kode status bukan 200, ESA membatalkan permintaan dan mengembalikan kode status403ke klien.Permintaan kemudian dicocokkan dengan kebijakan berikutnya dan dilanjutkan melalui logika pencocokan cache atau back-to-origin terakselerasi ESA.
Respons dari cache hit atau dari origin server dikembalikan ke POP ESA. Pada titik ini, respons tidak lagi diproses oleh layanan Functions and Pages.
Respons diteruskan ke klien.
Skenario umum
Logging: Jika Anda ingin menghasilkan log untuk beberapa permintaan, Anda dapat meneruskan permintaan tersebut ke layanan Functions and Pages dalam mode bypass dan menentukan logika logging kustom dalam fungsi tersebut.
Otentikasi untuk unduhan file besar: Saat edge function meneruskan respons ke klien, fungsi tersebut mengonsumsi waktu CPU. Jika respons terlalu besar, hal ini dapat melebihi batas time slice CPU dan menimbulkan biaya tambahan. Anda dapat menggunakan mode bypass untuk melakukan otentikasi dengan layanan Functions and Pages guna menghindari masalah tersebut.