全部产品
Search
文档中心

CDN:Custom Cache Key

更新时间:Feb 11, 2026

Anda dapat mengonfigurasi kunci cache kustom dengan membuat aturan yang menghasilkan kunci cache berdasarkan bagian-bagian berbeda dari permintaan HTTP, seperti URI, parameter permintaan, header permintaan HTTP, atau variabel kustom. Fitur ini menyatukan permintaan untuk file yang sama ke dalam satu kunci cache, sehingga mencegah permintaan identik di-cache sebagai file berbeda. Akibatnya, tingkat hit cache meningkat, pengambilan asal (origin fetches) berkurang, serta waktu respons dan konsumsi bandwidth menurun.

Catatan

  • Fitur kunci cache kustom dan fitur ignore parameter saling eksklusif. Jika Anda telah mengonfigurasi ignore parameters, CDN points of presence (POPs) akan menghapus parameter yang mengikuti tanda tanya (?) dalam URL permintaan. Hal ini menyebabkan parameter permintaan yang dikonfigurasi dalam kunci cache tidak tersedia. Sebelum mengaktifkan kunci cache kustom, pastikan Anda belum mengonfigurasi pengaturan ignore parameter apa pun.

  • Fitur kunci cache kustom hanya memodifikasi identifikasi cache suatu permintaan dan tidak mengubah URL pengambilan asal (origin fetch). Konten permintaan origin fetch tetap sama dengan permintaan klien.

  • Fitur purge URL tidak dapat membersihkan konten yang di-cache setelah Anda mengonfigurasi kunci cache kustom.

Kasus Penggunaan

Penting

Fitur kunci cache kustom hanya memodifikasi identifikasi cache suatu permintaan dan tidak mengubah URL pengambilan asal (origin fetch). Konten permintaan origin fetch tetap sama dengan permintaan klien.

Kunci cache adalah pengenal unik (ID) untuk file yang di-cache pada node CDN. Secara default, kunci cache suatu file adalah URL permintaan, termasuk parameternya.

Kasus Penggunaan 1

URL permintaan dapat berisi parameter kompleks. Jika beberapa permintaan ditujukan ke file yang sama tetapi memiliki parameter URL berbeda, POPs memperlakukannya sebagai permintaan untuk file yang berbeda. Hal ini menghasilkan beberapa salinan cache dan peningkatan jumlah origin fetches.图一

Anda dapat membuat aturan kunci cache kustom untuk menyatukan kunci cache dari permintaan tersebut guna mengurangi origin fetches.图二

Kasus Penggunaan 2

Saat permintaan memiliki URL yang sama, CDN menganggapnya sebagai permintaan untuk file yang sama. Namun, header HTTP mungkin berisi bidang client yang menentukan sistem klien berbeda, yang berarti permintaan tersebut sebenarnya ditujukan ke file yang berbeda.场景一

Dalam kasus ini, Anda dapat membuat kunci cache kustom yang mencakup nilai bidang client tersebut. Hal ini memungkinkan dua permintaan diidentifikasi oleh dua kunci cache yang berbeda.场景二

Prosedur

  1. Masuk ke CDN console.

  2. Di panel navigasi kiri, klik Domain Names.

  3. Pada halaman Domain Names, temukan nama domain target lalu klik Manage di kolom Actions.

  4. Di panel navigasi domain, klik Cache.

  5. Pada tab Custom Cache Key, klik Configure untuk mengonfigurasi kunci cache.

    Parameter Type

    Instruksi

    Rule Condition

    Kondisi aturan mengidentifikasi berbagai parameter dalam permintaan pengguna untuk menentukan apakah konfigurasi berlaku untuk permintaan tersebut.

    • Jangan gunakan: Jangan gunakan kondisi aturan.

    • Untuk menambah atau mengedit kondisi aturan, kelola di Rules Engine.

    URIs

    Jika URI yang diminta klien sesuai dengan Source URI yang dikonfigurasi, sistem akan mengganti Source URI tersebut dengan Final URI yang dikonfigurasi untuk membentuk kunci cache.

    Anda dapat mengonfigurasi beberapa kebijakan penggantian URI. Jika terdapat beberapa kebijakan, pencocokan dilakukan dari atas ke bawah. Begitu Source URI cocok, sistem akan menjalankan operasi penggantian menggunakan Final URI yang sesuai dan menghentikan evaluasi kebijakan berikutnya.

    • Source URI: URI harus diawali dengan garis miring (/) dan tidak boleh mencakup awalan http:// atau nama domain. Ekspresi reguler PCRE didukung.

    • Final URI: URI diawali dengan garis miring (/). URI ini tidak mencakup awalan `http://` atau nama domain.

    Request Parameter

    Objek operasi adalah parameter dalam URL permintaan asli. Anda dapat Add, Delete, Modify, atau Reserve parameter. Hasilnya akan ditambahkan ke kunci cache. Anda dapat mengonfigurasi beberapa operasi. Saat beberapa operasi dikonfigurasi, operasi tersebut dijalankan secara berurutan dari atas ke bawah.

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

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

    • Modify: Saat menghasilkan CacheKey, modifikasi parameter tertentu dalam URL permintaan asli. Contohnya: URL asli adalah http://image.example.com/cat.jpg?type=jpg, ubah parameter type=png, maka CacheKey-nya adalah.

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

    HTTP Headers

    Tambahkan nilai header HTTP tertentu dari permintaan asli klien ke kunci cache. Konfigurasikan beberapa nama header HTTP (pisahkan dengan spasi). Nilai setiap header HTTP ditambahkan ke kunci cache secara berurutan.

    Contohnya, jika URL asli adalah http://image.example.com/cat.jpg dan permintaan klien mencakup HTTP header (path: image), maka kunci cache menjadi http://image.example.com/cat.jpgimage ketika HTTP Headers mencakup header path.

    Custom Variables

    Anda dapat menggunakan ekspresi reguler untuk mencocokkan nilai parameter permintaan, header HTTP, atau cookie tertentu, atau URI tertentu dalam permintaan klien asli. Ketika ditemukan kecocokan, nilai yang cocok tersebut akan ditambahkan ke kunci cache. Untuk informasi lebih lanjut, lihat Contoh konfigurasi.

    自定义Cachekey

  6. Klik OK.

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 tersebut adalah http://aliyundoc.com/c/image.jpg.URI

Request Parameter

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

Penting

Jika beberapa operasi dilakukan pada variabel yang sama, urutan prioritasnya adalah: Add > Delete > Retain > Modify.

参数操作

HTTP Headers

Nilai header HTTP User-Agent dan Accept-Language ditambahkan ke kunci cache. Misalnya, jika permintaan untuk http://aliyundoc.com/a/b/image.jpg memiliki User-Agent=Mozilla/5.0 (Linux; X11) dan Accept-Language=en, maka kunci cache untuk permintaan ini adalah http://aliyundoc.com/a/b/image.jpgMozilla/5.0(Linux;X11)en.HTTP Header

Custom Variables

Contoh 1

Tetapkan nama variabel menjadi language, sumber menjadi Request Header, bidang sumber menjadi Accept-Language, aturan pencocokan menjadi ([%w]+),([%w]+), dan ekspresi variabel menjadi $1aa.自定义变量

Klien melakukan permintaan ke http://aliyundoc.com/a/b/image.jpg dengan header HTTP Accept-Language=en,ch . Aturan pencocokan menangkap en sebagai $1. Ekspresi variabel menggunakan grup tangkapan ini dan menambahkan aa untuk menghasilkan nilai enaa. Nilai ini, yang menggunakan alias language, ditambahkan ke URL untuk membentuk kunci cache akhir: http://aliyundoc.com/a/b/image.jpgenaa.

Catatan

Dalam ekspresi variabel, $n merujuk pada konten yang ditangkap oleh grup ke-n dalam aturan. Misalnya, jika string-nya adalah Accept-Language=en,ch dan aturannya adalah ([%w]+),([%w]+), maka $1 adalah en dan $2 adalah ch.

Contoh 2

Tetapkan nama variabel menjadi expired, sumber menjadi Request Cookie, bidang sumber menjadi a, aturan pencocokan menjadi [%w]+:(.*), dan ekspresi variabel menjadi $1.自定义变量

Klien melakukan permintaan ke http://aliyundoc.com/a/b/image.jpg dengan cookie Cookie a=expired_time:12635187. Aturan pencocokan mengekstraksi nilai 12635187 dan menetapkannya ke ekspresi variabel $1. Alias untuk variabel ini adalah expired. Nilai ini kemudian ditambahkan ke URL untuk membuat kunci cache akhir: http://aliyundoc.com/a/b/image.jpg12635187.

Contoh 3

Tetapkan aturan URI dan variabel kustom.

URI:

Gabungkan semua permintaan yang URInya cocok dengan /abc/.*/abc menjadi /abc.示例三

Variabel kustom:

Tetapkan nama variabel menjadi testname, sumber menjadi Path, aturan pencocokan menjadi /abc/xyz/(.*), dan ekspresi variabel menjadi $1.示例三

Klien melakukan permintaan ke URL http://aliyundoc.com/abc/xyz/abc/image.jpg. Berdasarkan konfigurasi URI, URL tersebut digabungkan untuk menghasilkan kunci cache http://aliyundoc.com/abc/image.jpg. Kemudian, berdasarkan konfigurasi variabel kustom, URL asli cocok dengan pola /abc/xyz/(.*). Dalam hal ini, variabel $1 diberi nilai abc dan ditambahkan ke kunci cache. Kunci cache akhir adalah http://aliyundoc.com/abc/image.jpgabc. Kombinasi dua aturan ini memungkinkan logika caching yang lebih kompleks.

Jika permintaan tidak memenuhi aturan pencocokan variabel kustom, ekspresi variabel $1 tidak ditambahkan ke kunci cache.

Contoh 4

Anda dapat menetapkan kondisi aturan dan variabel kustom untuk menghasilkan kunci cache berbeda bagi permintaan dari klien mobile dan PC.

Mobile rule condition:

User-Agent mengandung salah satu dari *Mobile*,*Android*,*iPhone*,*ipad*

image

PC rule condition:

User-Agent tidak mengandung salah satu dari *Mobile*,*Android*,*iPhone*,*ipad*

image

Mobile custom cache key:

Tetapkan Rule Condition ke Mobile. Lalu, untuk Custom Variables, tetapkan Variable Name ke Mobile, Source ke Path, Matching Rule ke /, dan Variable Expression ke +mobile.

image

PC custom cache key:

Tetapkan Rule Condition ke PC. Untuk Custom Variables, tetapkan Variable Name ke PC, Source ke Path, Matching Rule ke /, dan Variable Expression ke +pc.

image

Klien melakukan permintaan ke URL http://aliyundoc.com/image.jpg. Berdasarkan nilai User-Agent, permintaan tersebut cocok dengan aturan kunci cache kustom Mobile atau PC. Kunci cache akhir untuk klien Mobile adalah http://aliyundoc.com/image.jpg+mobile. Kunci cache akhir untuk klien PC adalah http://aliyundoc.com/image.jpg+pc.