全部产品
Search
文档中心

Edge Security Acceleration:Custom Cachekey

更新时间:Dec 24, 2025

Anda dapat membuat aturan berdasarkan bagian-bagian berbeda dari permintaan pengguna, seperti string kueri, header permintaan HTTP, atau cookie, untuk menghasilkan kunci cache kustom. Fitur ini menyatukan kunci cache untuk sekelompok permintaan yang mengakses file yang sama, sehingga mencegah file yang sama di-cache sebagai entitas berbeda akibat variasi parameter permintaan. Akibatnya, tingkat hit cache meningkat, sedangkan waktu respons dan konsumsi bandwidth berkurang.

Informasi latar belakang

  • Fitur custom cache key tidak mengubah URL back-to-origin. Fitur ini hanya mengubah identitas cache dari permintaan, sehingga memastikan bahwa permintaan back-to-origin tetap konsisten dengan permintaan klien.

  • Kunci cache adalah pengidentifikasi unik untuk file yang di-cache pada titik kehadiran (POP) ESA. Setiap file yang di-cache pada POP memiliki kunci cache unik. Secara default, kunci cache adalah URL lengkap dari permintaan klien, termasuk semua parameter tersebut.

Catatan

Jika Anda mengonfigurasi CacheKey kustom dengan parameter seperti header permintaan HTTP, cookie, atau fitur pengguna, Anda tidak dapat menggunakan Purge cache by URL untuk membersihkan file cache untuk URL tertentu. Sebagai gantinya, Anda harus menggunakan Purge cache by custom cache key untuk membersihkan file cache untuk URL tersebut.

Kasus penggunaan

Kasus penggunaan 1: Menyatukan kunci cache

URL permintaan pelanggan berisi parameter kompleks. Akibatnya, meskipun beberapa permintaan mengakses file yang sama, POP ESA menganggapnya sebagai permintaan untuk file berbeda karena variasi parameter URL. POP kemudian meng-cache-nya sebagai beberapa file, yang meningkatkan jumlah permintaan back-to-origin.

Untuk mengatasi masalah ini, Anda dapat menggunakan fitur custom cache key untuk mengabaikan string kueri. Hal ini menyatukan kunci cache untuk kelompok permintaan yang sama dan mengurangi laju back-to-origin.

image

Kasus penggunaan 2: Membedakan kunci cache

Ketika URL permintaan klien identik, ESA menganggapnya sebagai permintaan untuk file yang sama. Namun, bidang client dalam header permintaan HTTP dapat membedakan antara sistem klien yang berbeda, menunjukkan bahwa file yang diminta sebenarnya berbeda.

Dalam kasus ini, Anda dapat menggunakan fitur custom cache key untuk menghasilkan kunci cache berbeda berdasarkan tipe klien, sehingga kedua permintaan diidentifikasi oleh dua kunci cache yang berbeda.

image

Prosedur

Setelah Anda menambahkan aturan, ketika pengguna meminta resource, ESA mencocokkan dan mengeksekusi aturan secara berurutan berdasarkan prioritas eksekusi aturan.

  1. Di Konsol ESA, pilih Websites. Di kolom Website, klik situs target.

  2. Di panel navigasi sebelah kiri, pilih Rules > Cache Rules.

  3. Klik Create Rule dan masukkan Rule Name.

  4. Di bagian If requests match..., konfigurasikan kondisi yang harus dipenuhi oleh permintaan. Untuk informasi selengkapnya, lihat Composition of a rule expression.

  5. Di bagian Cache Eligibility, atur Cache Eligibility menjadi Eligible for Cache.

  6. Di bagian Custom Cache Keys, klik Configure, lalu atur parameter berikut.

    image

    Parameter

    Deskripsi

    Sort Query Strings

    Menentukan apakah akan mengaktifkan fitur Sort Query String.

    Query String

    Menentukan apakah akan menghapus ? dan query string setelahnya dari URL permintaan.

    HTTP Request Header

    • Include Header Names and Their Values: Menambahkan nama header permintaan HTTP yang ditentukan beserta nilainya ke Cachekey.

    • Check Presence of: Memeriksa apakah header permintaan HTTP yang ditentukan ada. Jika ada, nama-namanya ditambahkan ke Cachekey.

    Cookie

    • Include Cookie Names and Their Values: Menambahkan nama parameter cookie yang ditentukan beserta nilainya ke Cachekey.

    • Check Presence of: Memeriksa apakah parameter cookie yang ditentukan ada. Jika ada, nama-namanya ditambahkan ke Cachekey.

    User

    • Device Type: Mengidentifikasi tipe klien berdasarkan informasi User-Agent klien, lalu menghasilkan Cachekey berdasarkan tipe klien tersebut.

    • Country/Region: Mengidentifikasi negara atau wilayah klien berdasarkan alamat IP klien, lalu menghasilkan Cachekey berdasarkan negara atau wilayah tersebut.

    • Language: Mengidentifikasi bahasa klien berdasarkan informasi Accept-Language dalam permintaan klien, lalu menghasilkan Cachekey berdasarkan tipe bahasa tersebut.

    Cache Deception Defense

    Melindungi dari serangan web cache deception sekaligus memungkinkan konten statis di-cache.

  7. Klik OK.

Contoh konfigurasi

Skenario contoh

  • URL permintaan pengguna: http://www.example.com/image.jpg?key123=321&key456=654

  • Header permintaan yang dibawa dalam permintaan pengguna:

    • name123:321

    • name456:654

    • User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.X.X Safari/537.36

    • Accept-Language:zh-CN

  • Klien mengakses layanan menggunakan alamat IP China Telecom.

Konfigurasi fitur

  • Query String: Delete parameter key456

  • HTTP Request Header:

    • Include Header Names and Their Values: name123

    • Check Presence of: name456

  • User: Saklar Device Type, Country/Region, dan Language semuanya diaktifkan.

image

Cachekey yang dihasilkan

Fragment Cachekey yang dihasilkan untuk setiap parameter adalah:

  • http://www.example.com/image.jpg?key123=321

  • name123:321

  • name456

  • desktop

  • CN

  • Accept-Language:zh-CN

Oleh karena itu, Cachekey akhir merupakan gabungan dari fragment-fragment tersebut: http://example.com/image.jpg?key123=321name123:321name456desktopCNAccept-Language:zh-CN

Referensi

Fitur-fitur terkait aturan memiliki perbedaan dalam prioritas eksekusiperilaku aturan, dan cakupan konfigurasi. Untuk informasi selengkapnya, lihat How ESA rules take effect.