All Products
Search
Document Center

Edge Security Acceleration:Custom cache key

Last Updated:Aug 15, 2026

Fitur custom cache key memungkinkan Anda menghasilkan kunci cache dari berbagai bagian permintaan HTTP, seperti URI, parameter kueri, header HTTP, atau variabel kustom. Dengan memetakan permintaan serupa untuk file yang sama ke satu kunci cache, Anda dapat meningkatkan rasio hit cache, mengurangi pengambilan asal (origin fetches), serta menurunkan waktu respons dan konsumsi bandwidth.

Catatan penggunaan

Custom cache key dan Ignore Parameters

Fitur Parameter Actions pada custom cache key dan fitur Ignore Parameters keduanya mengontrol cara parameter kueri URL ditangani saat menghasilkan kunci cache. Jika kedua fitur dikonfigurasi secara bersamaan, fitur Ignore Parameters akan menjadi tidak efektif karena pengaturan custom cache key di tingkat aturan menggantikan konfigurasi global Ignore Parameters.

Penting

Jika Anda menggunakan operasi parameter untuk custom cache key, nonaktifkan fitur Ignore Parameters untuk mencegah konflik aturan. Operasi parameter 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 perlu beralih ke operasi parameter untuk custom cache key.

Scenario

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.

Pertahankan hanya 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 mempertahankannya, gunakan operasi parameter untuk custom cache key alih-alih fitur Ignore Parameters.

Urutan eksekusi rules engine

Catatan

Saat fitur ini mereferensikan Rule Condition dari Rules Engine, urutan eksekusinya didasarkan pada prioritas Rule Condition 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 berdasarkan kunci cache yang telah diproses. Saat melakukan refresh cache berdasarkan URL, kirimkan URL yang sesuai dengan kunci cache di PoP DCDN. Jika tidak, operasi refresh tidak akan menemukan konten target.

Catatan

Misalnya, 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, gunakan URL yang telah diproses sebagai alamat refresh. Catat 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 fetches). Saat PoP DCDN mengambil dari origin, URL permintaan klien asli tetap digunakan. Untuk menulis ulang parameter atau jalur permintaan yang dikirim ke origin, gunakan fitur origin URL rewrite.

Catatan

Misalnya, 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 mengambil dari origin, permintaan tetap menggunakan URL asli: http://example.com/image.jpg?key1=1&key2=2.

Kasus penggunaan

Penting

Fitur custom cache key tidak memodifikasi URL yang digunakan untuk pengambilan asal. Fitur ini hanya mengubah pengidentifikasi 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 cache adalah URL permintaan lengkap, termasuk parameter kueri.

Scenario 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 pengambilan asal.图一

Anda dapat menggunakan aturan custom cache key untuk menyatukan kunci cache dari permintaan serupa, sehingga mengurangi laju pengambilan asal.图二

Scenario 2

DCDN memperlakukan permintaan dengan URL yang sama sebagai permintaan untuk file yang sama. Namun, header HTTP permintaan berisi bidang client untuk membedakan 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 sebelah kiri, klik Domain Names.

  3. Pada halaman Domain Names, temukan nama domain target lalu klik Configure.

  4. Di pohon navigasi sebelah kiri 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

    Description

    Rule Condition

    Kondisi aturan menentukan apakah konfigurasi berlaku untuk suatu permintaan dengan mengevaluasi parameter dalam permintaan tersebut.

    Penting

    Saat suatu fitur mereferensikan kondisi aturan yang dikonfigurasi di rules engine, urutan eksekusinya mengikuti prioritas kondisi aturan 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 mengonfigurasi 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, 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 mencakup 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

    Menambahkan informasi variabel kustom ke kunci cache yang dihasilkan untuk meningkatkan fleksibilitas konfigurasi cache Anda. Variabel kustom mencakup parameter berikut:

    • Variable Name: Nama kustom untuk variabel tersebut.

    • Variable Source: Bidang tertentu dalam permintaan klien yang digunakan sebagai sumber variabel.

      • Query String Parameter: String kueri dalam URL permintaan.

      • Request Header: Header permintaan dalam permintaan klien.

      • Path: Jalur resource dalam URL permintaan.

      • Scheme: Protokol yang digunakan dalam URL permintaan. Mendukung HTTP dan HTTPS.

    • Source Field Name: Berlaku untuk tiga skenario berikut:

      • Nama parameter string kueri tertentu.

      • Nama header permintaan tertentu.

    • Matching Rule: Ekspresi reguler yang digunakan untuk mencocokkan karakter tertentu dalam nilai bidang.

    • Variable Expression: Digunakan untuk menghasilkan nilai variabel akhir. Mendukung string tetap dan ekspresi seperti $1 untuk mereferensikan konten dari grup tangkapan pertama.

  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: 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 bekerja sama untuk menerapkan logika caching yang lebih kompleks.

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