All Products
Search
Document Center

Edge Security Acceleration:Custom cache key

Last Updated:May 01, 2026

Konfigurasikan custom cache key untuk menetapkan aturan yang menghasilkan kunci cache dari berbagai bagian permintaan HTTP, seperti URI, parameter kueri, header HTTP, atau variabel kustom. Pendekatan ini memetakan permintaan serupa terhadap file yang sama ke satu kunci cache, sehingga meningkatkan rasio hit cache, mengurangi laju pengambilan asal (origin fetch), serta menurunkan waktu respons dan konsumsi bandwidth.

Catatan penggunaan

Custom cache key dan Ignore Parameters

Fitur Parameter Operations pada CacheKey kustom dan fitur Ignore Parameters keduanya mengontrol apakah parameter kueri URL disertakan dalam pembuatan kunci cache. Jika Anda mengaktifkan kedua fitur secara bersamaan, konflik dalam aturan pembuatan kunci cache dapat terjadi, yang berpotensi menurunkan rasio hit cache atau menyebabkan konten cache tidak normal.

Penting

Jika Anda menggunakan operasi parameter untuk custom cache key, nonaktifkan fitur Ignore Parameters untuk mencegah konflik aturan. Operasi parameter untuk custom cache key mencakup fungsionalitas fitur Ignore Parameters (melalui operasi Delete atau Reserve) dan menawarkan kontrol parameter yang lebih fleksibel.

Jika Anda menggunakan fitur Ignore Parameters, lihat tabel berikut untuk memutuskan apakah akan beralih ke operasi parameter untuk custom cache key.

Skenario

Ignore Parameters

Custom cache key

Abaikan semua parameter kueri dalam kunci cache

Atur Ignore Parameters ke Yes dan biarkan Keep specified parameters kosong.

Tambahkan aturan pemrosesan untuk query parameters:

  • Operation: Keep

  • Parameter Name: Atur ke nama parameter apa pun yang tidak ada, misalnya example-argument.

Hanya pertahankan parameter kueri key1 dalam kunci cache

Atur Ignore Parameters ke Yes dan atur Keep specified parameters ke key1.

Tambahkan aturan pemrosesan untuk query parameters:

  • Operation: Keep

  • Parameter Name: key1

Hapus hanya parameter kueri key1 dari kunci cache

Atur Delete specified parameters ke key1.

Tambahkan aturan pemrosesan untuk query parameters:

  • Operation: Delete

  • Parameter Name: key1

Catatan

Jika Anda perlu memodifikasi nilai parameter lebih lanjut atau menambahkan parameter tambahan selain mengabaikan atau mempertahankan parameter, kami sarankan menggunakan operasi parameter untuk custom cache key daripada fitur Ignore Parameters.

Urutan eksekusi rules engine

Catatan

Saat fitur ini mereferensikan Rule Condition dari Rules Engine, urutan eksekusi didasarkan pada prioritas Rule Condition yang ditetapkan di Rules Engine, bukan prioritas aturan yang dikonfigurasi dalam fitur ini.

Refresh cache

Setelah Anda mengonfigurasi custom cache key, PoP DCDN mengindeks file yang di-cache menggunakan kunci cache yang telah diproses. Saat Anda melakukan refresh cache berdasarkan URL, Anda harus mengirimkan URL yang sesuai dengan kunci cache di PoP DCDN. Jika tidak, operasi refresh tidak akan menemukan konten target.

Catatan

Sebagai contoh, jika Anda mengonfigurasi aturan penggantian URI untuk mengganti /a/b/image.jpg dengan /c/image.jpg, kunci cache untuk file tersebut di PoP DCDN menjadi http://aliyundoc.com/c/image.jpg. Untuk merefresh cache file ini, Anda harus mengirimkan http://aliyundoc.com/c/image.jpg (kunci cache yang telah diproses), bukan URL permintaan klien asli.

Jika Anda mengonfigurasi operasi parameter seperti menghapus atau memodifikasi parameter, Anda juga harus menggunakan URL yang telah diproses sebagai alamat refresh. Kami menyarankan agar Anda mencatat format kunci cache akhir setelah mengonfigurasi aturan custom cache key untuk menyederhanakan operasi refresh cache di masa mendatang.

Penulisan ulang URL origin

Fitur custom cache key hanya memengaruhi cara kunci cache dihasilkan di PoP DCDN. Fitur ini tidak mengubah URL aktual yang digunakan untuk pengambilan asal (origin fetch). Saat PoP DCDN melakukan origin fetch, URL permintaan klien asli tetap digunakan untuk mengambil konten dari origin. Untuk menulis ulang parameter atau path permintaan yang dikirim ke origin, gunakan fitur origin URL rewrite.

Catatan

Sebagai contoh, klien meminta http://example.com/image.jpg?key1=1&key2=2. Anda mengonfigurasi custom cache key untuk menghapus parameter key1. Kunci cache menjadi http://example.com/image.jpg?key2=2. Namun, saat PoP DCDN melakukan origin fetch, URL asli tetap diminta: http://example.com/image.jpg?key1=1&key2=2.

Kasus penggunaan

Penting

Fitur custom cache key tidak memodifikasi URL yang digunakan untuk origin fetch. Fitur ini hanya mengubah identifikasi cache untuk permintaan tersebut. Permintaan yang dikirim ke origin tetap identik dengan permintaan klien asli.

Kunci cache adalah pengidentifikasi unik untuk file yang di-cache di PoP DCDN. Secara default, kunci ini adalah URL permintaan lengkap, termasuk parameter kueri apa pun.

Skenario 1

Saat permintaan klien untuk file yang sama berisi parameter URL berbeda, PoP DCDN memperlakukannya sebagai permintaan untuk file berbeda. Hal ini menghasilkan beberapa salinan cache dari file yang sama dan meningkatkan jumlah origin fetch.图一

Anda dapat menggunakan aturan custom cache key untuk menyatukan kunci cache dari permintaan serupa. Hal ini mengurangi laju origin fetch.图二

Skenario 2

DCDN memperlakukan permintaan dengan URL yang sama sebagai permintaan untuk file yang sama. Namun, header HTTP permintaan sebenarnya berisi bidang client untuk membedakan antar sistem klien, dan tujuannya adalah mengambil file berbeda.Scenario 1

Dalam kasus ini, Anda dapat menggunakan Cachekey kustom untuk menambahkan nilai bidang client ke Cachekey. Dua permintaan tersebut kemudian diidentifikasi sebagai dua Cachekey berbeda.Scenario 2

Prosedur

  1. Masuk ke DCDN console.

  2. Di panel navigasi kiri, klik Domain Names.

  3. Pada halaman Domain Names, temukan nama domain yang ingin Anda kelola lalu klik Configure.

  4. Di pohon navigasi kiri halaman domain, klik Caching.

  5. Pada tab Custom Cache Key, konfigurasikan Cache Key.

    Catatan

    Kunci cache akhir merupakan kombinasi dari empat komponen berikut: URI, Parameter Actions, HTTP Headers, dan Custom Variables.

    自定义Cachekey

    Parameter

    Deskripsi

    Rule Condition

    Rule condition menentukan apakah konfigurasi berlaku untuk suatu permintaan dengan mengevaluasi berbagai parameter dalam permintaan tersebut.

    Penting

    Saat suatu fitur mereferensikan rule condition yang dikonfigurasi di rules engine, urutan eksekusi mengikuti prioritas rule condition terkait, bukan urutan konfigurasi fitur.

    • Do not use conditions: Menonaktifkan aturan kondisional.

    • Anda dapat menambah atau mengedit aturan kondisional di Rules engine.

    URIs

    Jika URI permintaan klien sesuai dengan Source URI yang dikonfigurasi, sistem akan mengganti Source URI dengan Final URI yang dikonfigurasi saat menghasilkan bagian URI dari kunci cache.

    Anda dapat mengonfigurasi beberapa aturan penggantian URI. Jika terdapat beberapa aturan, pencocokan dilakukan secara berurutan dari atas ke bawah. Setelah Source URI cocok, sistem menggunakan Final URI yang sesuai untuk penggantian dan menghentikan pencocokan aturan berikutnya.

    • Source URI: URI yang diawali garis miring (/), tidak termasuk awalan http:// atau nama domain. Mendukung ekspresi reguler PCRE.

    • Final URI: URI yang diawali garis miring (/) dan tidak mengandung awalan http:// atau nama domain.

    Parameter Actions

    Operasi ini berlaku untuk parameter kueri dalam URL permintaan asli. Anda dapat melakukan operasi Add, Delete, Modify, atau Reserve pada parameter tersebut. Parameter hasil membentuk bagian string kueri dari kunci cache. Anda dapat menetapkan beberapa operasi, yang dieksekusi secara berurutan dari atas ke bawah.

    • Add: Menambahkan parameter kueri baru ke kunci cache. Misalnya, jika URL asli adalah http://image.example.com/cat.jpg dan Anda menambahkan parameter kueri type=jpg, kunci cache menjadi http://image.example.com/cat.jpg?type=jpg.

    • Delete: Menghapus parameter kueri tertentu dari URL permintaan asli saat kunci cache dihasilkan. Misalnya, jika URL asli adalah http://image.example.com/cat.jpg?type=jpg dan Anda menghapus parameter type, kunci cache menjadi http://image.example.com/cat.jpg.

    • Modify: Memodifikasi parameter kueri tertentu dalam URL permintaan asli saat kunci cache dihasilkan. Misalnya, jika URL asli adalah http://image.example.com/cat.jpg?type=jpg dan Anda memodifikasi parameter menjadi type=png, kunci cache menjadi http://image.example.com/cat.jpg?type=png.

    • Reserve: Hanya mempertahankan parameter kueri tertentu dari URL permintaan asli saat kunci cache dihasilkan. Misalnya, jika URL asli adalah http://image.example.com/cat.jpg?type=jpg&path=image dan Anda mempertahankan parameter type, kunci cache menjadi http://image.example.com/cat.jpg?type=jpg.

    HTTP Headers

    Menambahkan nilai header HTTP tertentu dari permintaan klien asli ke kunci cache. Anda dapat mengonfigurasi beberapa nama header HTTP yang dipisahkan spasi. Nilai setiap header HTTP yang ditentukan ditambahkan ke kunci cache secara berurutan.

    Misalnya, jika URL asli adalah http://image.example.com/cat.jpg dan permintaan klien menyertakan header HTTP path: image, serta Anda mengatur pengaturan HTTP Headers untuk menyertakan header path, kunci cache menjadi http://image.example.com/cat.jpgimage.

    Custom Variables

    Anda dapat menggunakan ekspresi reguler untuk mencocokkan nilai parameter kueri, header HTTP, parameter cookie, atau URI tertentu dari permintaan klien asli. Jika ditemukan kecocokan, nilai yang sesuai akan ditambahkan ke kunci cache. Untuk detailnya, lihat Contoh konfigurasi.

  6. Klik OK untuk menyelesaikan konfigurasi.

Contoh konfigurasi

URIs

Permintaan untuk http://aliyundoc.com/a/b/image.jpg dan http://aliyundoc.com/a/b/c/image.jpg diperlakukan sebagai permintaan untuk file yang sama. Kunci cache untuk file ini adalah http://aliyundoc.com/c/image.jpg.URI

Parameter Actions

Untuk permintaan klien ke http://aliyundoc.com/a/b/image.jpg?delete_par=1&modify_par=1 , aturan menambahkan add_par=1, menghapus delete_par, dan memodifikasi nilai modify_par menjadi 2. Kunci cache akhir adalah http://aliyundoc.com/a/b/image.jpg?modify_par=2&add_par=1.

Penting

Untuk operasi parameter, jika beberapa operasi diterapkan pada variabel yang sama, prioritas operasinya adalah sebagai berikut: Add > Delete > Keep > Modify.

参数操作

HTTP Headers

Nilai header HTTP User-Agent dan Accept-Language dari permintaan klien ditambahkan ke kunci cache. Untuk permintaan ke http://aliyundoc.com/a/b/image.jpg dengan User-Agent: Mozilla/5.0 (Linux; X11) dan Accept-Language: en, kunci cache yang dihasilkan adalah http://aliyundoc.com/a/b/image.jpgMozilla/5.0(Linux;X11)en.HTTP Header

Custom Variables

Contoh 1

Nama variabel adalah language, sumbernya adalah Request Header, nama bidang sumber adalah Accept-Language, pola pencocokan adalah ([%w]+),([%w]+), dan ekspresi variabel adalah $1aa.Custom Variables

Jika klien mengirim permintaan untuk http://aliyundoc.com/a/b/image.jpg dengan header permintaan HTTP Accept-Language=en,ch , pola pencocokan mencocokkan en dan menetapkannya ke $1 dalam ekspresi variabel. Ekspresi variabel kemudian menambahkan aa untuk membuat nilai enaa. Nilai ini dialiaskan sebagai language dan ditambahkan ke URL untuk membentuk kunci cache akhir: http://aliyundoc.com/a/b/image.jpgenaa.

Catatan

Dalam ekspresi variabel, $n merepresentasikan konten yang ditangkap oleh pasangan tanda kurung ke-n dalam pola pencocokan. Misalnya, dalam Contoh 1, jika input adalah Accept-Language=en,ch dan pola pencocokan adalah ([%w]+),([%w]+), maka $1=en dan $2=ch.

Contoh 2

Nama variabel adalah expired, sumbernya adalah Request Cookie, nama bidang sumber adalah a, pola pencocokan adalah [%w]+:(.*), dan ekspresi variabel adalah $1.Custom variable

Jika klien meminta http://aliyundoc.com/a/b/image.jpg dengan cookie Cookie a=expired_time:12635187, pola pencocokan mencocokkan 12635187. Nilai ini ditetapkan ke $1 dalam ekspresi variabel dengan alias expired, dan ditambahkan ke URL untuk membentuk Cachekey akhir: http://aliyundoc.com/a/b/image.jpg12635187.

Contoh 3

Konfigurasikan aturan URI dan variabel kustom secara bersamaan.

  • URI:

    Tulis ulang semua URI permintaan yang cocok dengan /abc/.*/abc menjadi /abc.示例三

  • Variabel Kustom:

    Nama variabel adalah testname, sumbernya adalah Path, pola pencocokan adalah /abc/xyz/(.*), dan ekspresi variabel adalah $1.Example 3

    Untuk permintaan klien dengan URL http://aliyundoc.com/abc/xyz/abc/image.jpg, Cache Key dinormalisasi menjadi http://aliyundoc.com/abc/image.jpg berdasarkan konfigurasi URI. Kemudian, berdasarkan konfigurasi Variabel Kustom, URL ini cocok dengan /abc/xyz/(.*), di mana $1 diberi nilai abc dan ditambahkan ke Cache Key untuk membentuk Cache Key akhir: http://aliyundoc.com/abc/image.jpgabc. Hal ini memungkinkan kedua aturan digunakan secara kombinasi untuk menerapkan logika caching yang lebih kompleks.

    Jika variabel kustom untuk CacheKey tidak cocok, ekspresi variabel $1 tidak akan digabungkan ke CacheKey.