All Products
Search
Document Center

CDN:Konfigurasikan waktu kedaluwarsa cache CDN

Last Updated:Apr 01, 2026

Aturan cache mengontrol berapa lama resource tetap di-cache pada POP CDN (points of presence) sebelum diambil ulang dari server origin Anda. Menetapkan TTL (time to live) yang tepat menyeimbangkan kesegaran konten, kinerja akselerasi, dan biaya lalu lintas origin.

Cara kerja

Saat permintaan tiba di POP, CDN mengevaluasi apakah akan menyajikan respons dari cache atau mengambil dari server origin Anda. Keputusan tersebut mengikuti urutan prioritas empat tingkat:

PriorityConditionBehavior
1. Origin no-cache headersOrigin merespons dengan Cache-Control: no-cache, no-store, atau max-age=0, atau Pragma: no-cachePOP tidak menyimpan resource dalam cache. Untuk mengabaikan perilaku ini, aktifkan Ignore Origin No-Cache Header di aturan cache Anda.
2. Console cache rulesSebuah aturan cocok dengan path permintaan atau ekstensi file.CDN menggunakan TTL yang dikonfigurasi. Aturan dengan bobot lebih tinggi memiliki prioritas lebih besar; jika bobotnya sama, aturan yang dibuat lebih awal berlaku. Setelah sebuah aturan cocok, tidak ada aturan lain yang dievaluasi.
3. Origin cache headersTidak ada aturan Konsol yang cocok, atau aturan yang cocok memiliki Honor Origin TTL diaktifkan.CDN mengikuti header cache HTTP dari origin, dievaluasi dalam urutan berikut: Cache-Control (s-maxage terlebih dahulu, lalu max-age) → ExpiresLast-Modified (TTL = (waktu saat ini − Last-Modified) × 0,1, dibatasi antara 10–3.600 detik) → ETag (TTL default: 10 detik).
4. No cacheTidak ada aturan Konsol yang cocok dan tidak ada header cache dari origin.POP tidak menyimpan resource dalam cache.
Kebijakan cache hanya berlaku untuk respons origin dengan kode status 200, 203, 206, 300, 301, 308, atau 410. Untuk menyimpan respons dengan kode status lain (seperti 404) dalam cache, konfigurasikan hal ini di halaman Cache Settings.

Interaksi antara Honor Origin TTL dan Ignore Origin No-Cache Header

Kedua pengaturan ini bekerja bersama untuk mengontrol cara CDN menangani sinyal cache dari origin. Gunakan tabel berikut untuk menentukan perilaku hasil dari setiap kombinasi:

Honor Origin TTLIgnore Origin No-Cache HeaderPerilaku
Dinonaktifkan (default)Dinonaktifkan (default)TTL aturan cache konsol digunakan. Header no-cache dari origin mencegah caching.
DinonaktifkanDiaktifkanTTL aturan cache konsol digunakan. Header no-cache dari origin diabaikan.
DiaktifkanDinonaktifkanHeader cache dari origin memiliki prioritas lebih tinggi daripada TTL aturan konsol. Header no-cache dari origin tetap mencegah caching.
DiaktifkanDiaktifkanHeader cache dari origin memiliki prioritas. Header no-cache diabaikan — resource di-cache menggunakan TTL dari origin.

Konfigurasikan aturan cache

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Domain Alibaba Cloud CDN dengan akselerasi diaktifkan

  • Akses ke Konsol CDN

Tambahkan aturan cache (konsol)

  1. Di Konsol CDN, buka halaman Domain Names dan klik Manage untuk domain target Anda.

  2. Buka Cache > Cache Expiration, lalu klik Add.

image
  1. Konfigurasikan parameter berikut:

ParameterDeskripsi
TypeCakupan aturan: Directory atau File Extension.
ObjectPath atau ekstensi yang dicocokkan. Directory: harus diawali dengan / (misalnya, /static/); satu / saja mencocokkan semua path; satu direktori per aturan. File Extension: ekstensi dipisahkan koma (misalnya, jpg,css); peka huruf besar/kecil; tidak mendukung wildcard (*).
Expire InBerapa lama POP CDN menyimpan resource dalam cache. Maksimum: 3 tahun. Lihat TTL yang Direkomendasikan sebagai panduan.
Honor Origin TTLJika diaktifkan, header cache dari server origin memiliki prioritas lebih tinggi daripada TTL aturan ini.
Ignore Origin No-Cache HeaderJika diaktifkan, CDN mengabaikan Cache-Control: no-store, no-cache, max-age=0, dan Pragma: no-cache dari origin. Resource di-cache menggunakan TTL aturan ini.
Follow POP Cache PolicyJika diaktifkan, CDN mengirim kebijakan cache efektifnya (misalnya, Cache-Control: max-age=3600) ke browser. Hal ini mengurangi permintaan berulang ke POP.
Force RevalidationHanya berlaku ketika Expire In diatur ke 0 detik. Disabled (default): file tidak di-cache; setiap permintaan diambil dari origin. Enabled: file di-cache, tetapi POP melakukan revalidasi dengan origin pada setiap permintaan.
WeightPrioritas aturan, dari 1 hingga 99. Nilai lebih tinggi = prioritas lebih tinggi. Jika dua aturan memiliki bobot yang sama, aturan yang dibuat lebih awal yang digunakan. Setelah suatu aturan cocok, aturan lain tidak dievaluasi lagi.
Rule ConditionMempersempit cakupan aturan menggunakan parameter permintaan (header, parameter URL). Default: Not used. Konfigurasikan kondisi lanjutan di Rule Engine.
  1. Klik OK untuk menyimpan aturan.

Konfigurasi melalui API

Panggil operasi BatchSetCdnDomainConfig untuk mengonfigurasi aturan cache secara batch. Lihat Cache configuration untuk parameter terkait cache.

TTL yang Direkomendasikan

Jenis kontenContohTTL yang Direkomendasikan
Resource statis yang jarang diperbaruiGambar, paket instalasi, font1 bulan atau lebih lama
Resource statis yang sering diperbaruiJS, CSSAtur berdasarkan frekuensi pembaruan Anda
Konten dinamisPHP, JSP, respons API0 detik (tidak di-cache)

Terapkan perubahan aturan segera

Aturan baru dan yang dimodifikasi hanya berlaku untuk resource yang di-cache setelah perubahan dilakukan. Resource yang sudah di-cache sebelumnya tetap menggunakan TTL lama hingga masa berlakunya habis secara alami.

Untuk menerapkan perubahan di seluruh jaringan segera:

  • Setelah memodifikasi aturan: Gunakan Purge resource untuk membersihkan cache yang ada.

  • Setelah menambahkan aturan baru: Gunakan Prefetch resource untuk mengisi cache sebelumnya.

Verifikasi konfigurasi

Setelah menyimpan aturan cache, periksa apakah aturan tersebut berfungsi sesuai harapan.

Jalankan perintah verifikasi

curl -I "https://your.domain.com/path/to/file.jpg"

Interpretasikan header respons

Header responsYang harus diperhatikan
X-CacheHIT — permintaan dilayani dari cache. MISS — resource diambil dari server origin.
Cache-ControlJika Client Follows CDN Cache Policy diaktifkan, header ini menampilkan direktif cache yang dikirim ke browser, seperti max-age=3600.
X-Swift-CacheTimeTotal durasi cache yang dikonfigurasi untuk resource tersebut di POP CDN, dalam detik.

Praktik terbaik

Gunakan nama file berbasis versi untuk resource statis. Saat memperbarui file statis, beri nama baru yang mencakup versi atau hash (misalnya, style-v2.css atau style-a1b2c3d.css), lalu perbarui referensinya di HTML Anda. Perubahan ini langsung berlaku tanpa perlu purge manual dan merupakan cara paling andal untuk memastikan klien menerima konten terbaru.

Pisahkan aset dinamis dan statis. Gunakan path direktori berbeda untuk resource dinamis dan statis, lalu tetapkan masing-masing aturan cache tersendiri dengan TTL yang sesuai. Misalnya, atur TTL panjang untuk /static/ dan nonaktifkan caching untuk /api/.

Enable Follow POP Cache Policy. Ini mengirim kebijakan cache CDN ke browser melalui header respons Cache-Control, mengurangi permintaan berulang ke POP dan meningkatkan kecepatan pemuatan.

Hindari TTL yang terlalu pendek. TTL yang terlalu pendek menyebabkan pengambilan asal yang sering, sehingga meningkatkan beban dan biaya origin serta mengurangi manfaat akselerasi CDN.

Hindari TTL yang terlalu panjang. TTL yang terlalu panjang dapat mencegah klien menerima pembaruan tepat waktu. Untuk konten yang sering diperbarui, padukan TTL panjang dengan nama file berbasis versi atau gunakan fitur pembersihan cache bila diperlukan.

Mekanisme kontrol cache HTTP

Protokol HTTP menggunakan tiga mekanisme untuk mengontrol perilaku caching di POP CDN dan browser.

Caching berbasis kedaluwarsa

Server menyertakan direktif kedaluwarsa dalam respons. Resource yang di-cache dianggap segar hingga waktu tersebut dan kadaluwarsa setelahnya.

HeaderProtokolDeskripsiContoh
PragmaHTTP/1.0Menetapkan no-cache untuk kompatibilitas mundur dengan server HTTP/1.0.Pragma: no-cache
ExpiresHTTP/1.0Tanggal/waktu absolut setelah resource di-cache dianggap kadaluwarsa. Diabaikan jika Cache-Control ada. Nilai 0 menandakan resource langsung kadaluwarsa.Expires: Wed, 21 Oct 2022 07:28:00 GMT
Cache-ControlHTTP/1.1Header caching utama untuk klien modern. Mendukung direktif untuk kontrol fleksibel.Tidak di-cache: Cache-Control: no-cache / no-store / max-age=0. Di-cache selama 1 jam: Cache-Control: max-age=3600

Caching berbasis validasi

Server mengirim tag resource bersama respons awal. Pada permintaan berikutnya, klien mengirim kembali tag tersebut. Jika cocok, server mengembalikan 304 Not Modified (tanpa isi tubuh), menghemat bandwidth. Jika tidak cocok, server mengirim resource lengkap yang telah diperbarui.

HeaderProtokolDeskripsiContoh
Last-ModifiedHTTP/1.0Stempel waktu modifikasi terakhir resource.Last-Modified: Wed, 21 Oct 2015 07:28:00 GMT
ETagHTTP/1.1Pengidentifikasi unik (biasanya hash atau nomor versi) untuk versi spesifik resource. Lebih akurat daripada Last-Modified.ETag: "33a64df551425fcc55e4d42a148795d9f25f89d4"

Negosiasi konten dengan Vary

URL tunggal dapat menyajikan konten berbeda tergantung klien — misalnya, versi terkompresi vs. tidak terkompresi, atau mobile vs. desktop. Header respons Vary memberi tahu POP CDN header permintaan mana yang harus diperiksa saat menentukan apakah respons yang di-cache dapat digunakan untuk permintaan masuk.

HeaderProtokolDeskripsiContoh
VaryHTTP/1.1Mencantumkan header permintaan yang memengaruhi respons. POP menyimpan salinan terpisah untuk setiap kombinasi nilai header yang tercantum.Vary: Accept-Encoding (simpan versi terkompresi dan tidak terkompresi secara terpisah) / Vary: Accept-Encoding, User-Agent

Langkah berikutnya