全部产品
Search
文档中心

Edge Security Acceleration:Buat aplikasi dari templat fungsi

更新时间:Dec 05, 2025

ESA points of presence (POPs) menyediakan lingkungan serverless untuk menjalankan kode Anda. Anda dapat menulis kode dan mengonfigurasi aturan pemicu tanpa perlu mengonfigurasi server atau mengelola infrastruktur. Kode Anda dapat diskalakan secara elastis dan berjalan secara aman pada POP yang dekat dengan pengguna Anda, sehingga secara signifikan mengurangi biaya O&M dan meningkatkan kecepatan respons.

Langkah 1: Buat fungsi

  1. Masuk ke Konsol ESA. Di panel navigasi sebelah kiri, pilih Edge Computing > Functions and Pages.

  2. Pada halaman Functions and Pages, klik Create.

  3. Klik tab Function Templates, pilih templat fungsi sesuai kebutuhan, lalu klik Next.

    image

  4. Masukkan Routine Name dan Description, pratinjau detail kode, lalu klik Submit.

    image

  5. Setelah proses build sistem selesai, sebuah nama domain publik akan dihasilkan untuk mengakses fungsi tersebut. Anda dapat menggunakan nama domain ini untuk langsung mengakses dan melihat pratinjau hasilnya. Untuk mengikat nama domain kustom, lihat Cara mengikat nama domain kustom.imageimage

Langkah 2: Kembangkan dan uji fungsi

Anda dapat memodifikasi kode fungsi dan mengujinya secara lokal sesuai kebutuhan. Setelah itu, terapkan kode ke lingkungan pengujian. Pantau terus status dan performa eksekusinya untuk memastikan stabilitas dan kebenaran.

  1. Klik Associate Domain Name, lalu pilih tab Code. Anda dapat mengembangkan fungsi menggunakan sintaksis JavaScript ES6.

    image

    image

  2. ESA menyediakan lingkungan staging di sebelah kanan alat pengembangan kode di konsol. Setelah selesai mengembangkan kode, klik Save. Di bilah alat sebelah kanan, susun metode permintaan HTTP, header permintaan, dan badan permintaan. Setelah penyusunan selesai, klik tombol Request. Konsol akan langsung mengembalikan respons setelah permintaan diproses oleh fungsi.

  3. Setelah menguji kode, klik Generate Version.

  4. Pilih tab Deploy dan klik Release. Pada kotak dialog yang muncul, pilih Staging Environment untuk mempublikasikan versi tersebut. Fungsi akan berlaku pada POP pengujian edge. Anda dapat langsung mengikat Host untuk mengirim permintaan dari klien nyata dan melihat hasilnya di klien tersebut.

    image

Langkah 3: Publikasikan versi resmi

Setelah fungsi berjalan stabil di lingkungan pengujian dan lolos verifikasi, Anda dapat mempublikasikan kode fungsi ke lingkungan produksi.

  1. Pilih tab Deploy dan klik Released Versions.

  2. Klik Production Environment, pilih versi yang akan dipublikasikan, lalu klik Release. Semua POP di lingkungan produksi kemudian akan menerapkan versi kode fungsi tersebut.

    image

Cara mengikat nama domain kustom

Anda dapat mengikat nama domain ke fungsi untuk meneruskan seluruh traffic dari nama domain tertentu ke fungsi tersebut. Misalnya, jika Anda mengikat er.example.com ke suatu fungsi, semua permintaan ke nama domain tersebut akan ditangani oleh fungsi tersebut. Anda juga dapat mengonfigurasi aturan path URL melalui routing fungsi untuk meneruskan traffic dari path tertentu di bawah suatu nama domain ke fungsi tersebut. Sebagai contoh, Anda dapat mengarahkan permintaan untuk er.example.com/test/path/ ke fungsi guna mencapai pengalihan lalu lintas yang fleksibel dan detail halus.

Prasyarat

Langkah-langkah pengikatan

  1. Pada halaman Functions and Pages, pilih fungsi yang telah Anda buat.image

  2. Pilih tab Domain Names. Anda dapat meneruskan traffic dari nama domain ke fungsi dengan menambahkan nama domain atau aturan routing.

    Tambahkan nama domain

    Setelah Anda mengikat nama domain ke fungsi, Anda dapat langsung menggunakan nama domain tersebut untuk mengakses fungsi.

    Sebagai contoh, jika Anda telah menambahkan situs example.com di ESA, Anda dapat mengikat nama domain sebagai er.example.com. Maka, permintaan ke er.example.com, er.example.com/user, dan er.example.com/login akan diteruskan ke fungsi edge.

    1. Pada bagian Custom Domains, klik Add Domain Name.

    2. Masukkan nama domain dan klik OK.

      image

    Catatan

    Untuk nama domain yang terhubung menggunakan Rekaman NS: Setelah Anda mengikat nama domain, sistem secara otomatis menambahkan Rekaman DNS untuk fungsi tersebut.

    Untuk nama domain yang terhubung menggunakan Rekaman CNAME: Setelah Anda mengikat nama domain, nilai CNAME akan dihasilkan secara otomatis. Anda harus menambahkan secara manual Rekaman CNAME melalui penyedia layanan resolusi nama domain Anda untuk situs saat ini.

    Tambahkan entri rute

    Fitur routing memungkinkan Anda memetakan URL tertentu ke suatu fungsi. Ketika permintaan sesuai dengan URL yang dikonfigurasi, fungsi akan memproses permintaan tersebut. Jika tidak, permintaan akan dilanjutkan melalui alur back-to-origin yang dipercepat oleh ESA. Seperti yang ditunjukkan pada gambar berikut, jika Anda mengonfigurasi aturan routing example.com/a* untuk situs example.com, semua akses path yang sesuai dengan aturan routing tersebut—seperti /a, /a1, dan /a2—akan diproses oleh fungsi. Akses path lain yang tidak sesuai dengan aturan routing—seperti /b, /c, dan /d—akan tetap mengikuti alur back-to-origin atau caching yang dipercepat.

    1. Pada bagian Routes, klik Add Route.

    2. Masukkan Route Name dan pilih situs target dari daftar Select Website, misalnya example.com.

    3. Pilih Route Mode.

      Simple mode

      1. Masukkan Route Name dan pilih situs target.

      2. Pilih SImple Mode dan masukkan aturan routing.

        image

      Custom mode

      1. Masukkan Route Name dan pilih situs target.

      2. Pilih Custom Mode.

      3. Pada bagian If requests match..., atur fitur permintaan yang akan dicocokkan. Untuk informasi lebih lanjut tentang cara mengonfigurasi aturan, lihat Rule expression components.

      4. Then, execute fungsi edge.

        image

      • Contoh 1: Jika Anda mengatur rute menjadi *.example.com/*, semua permintaan yang dikirim ke http://www.example.com/ atau http://example.com/ akan diteruskan ke fungsi.

      • Contoh 2: Jika Anda mengatur rute menjadi example.com/a*, semua permintaan yang dikirim ke http://example.com/a, http://example.com/a1, atau http://example.com/api akan diteruskan ke fungsi.

      • Contoh 3: Jika Anda mengatur rute menjadi www.example.com/api/*, semua permintaan yang dikirim ke http://www.example.com/api/ dan subpath-nya—seperti http://www.example.com/api/users atau http://www.example.com/api/products/123—akan diteruskan ke fungsi.

    4. Klik OK.

    Catatan
    • Jika rute yang Anda masukkan adalah nama domain dengan awalan, seperti *.example.com atau www.example.com, Anda juga harus menambahkan catatan secara manual ke Rekaman DNS di ESA. Jika tidak, akses akan gagal.

    • Jika beberapa rute fungsi dikonfigurasi, sistem akan memeriksanya dari atas ke bawah. Saat ditemukan kecocokan, sistem akan berhenti memeriksa rute yang tersisa.

    Aturan pencocokan

    • Konfigurasi rute 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 rute untuk mencocokkan lebih banyak permintaan. Karakter wildcard * dapat mencocokkan nol atau lebih karakter apa pun. Sebagai contoh, example.com/* mencocokkan semua permintaan ke example.com.

    • Konfigurasi rute bersifat case-sensitive. Sebagai contoh, example.com/a dan example.com/A adalah dua aturan routing yang berbeda.

    • Anda tidak dapat menempatkan karakter wildcard (*) atau parameter di tengah rute. Sebagai contoh, format seperti example.com/*/path dan example.com/path?param=1 tidak diizinkan.

    • Ketika permintaan akses sesuai dengan beberapa konfigurasi rute, aturan yang dikonfigurasi lebih awal memiliki prioritas lebih tinggi.