Saat Anda mengaktifkan pengabaian parameter, node edge CDN menghapus parameter kueri (bagian setelah ?) dari URL permintaan. Hal ini memungkinkan permintaan dengan parameter berbeda untuk mengakses salinan cache yang sama, sehingga meningkatkan rasio hit cache. Topik ini menjelaskan cara mengonfigurasi pengabaian parameter, membandingkannya dengan fitur alternatif, serta memberikan panduan troubleshooting untuk masalah umum.
Perbandingan dan Pemilihan Fitur
Custom Cache Key bertentangan dengan pengabaian parameter. Saat pengabaian parameter diaktifkan, node edge menghapus semua parameter setelah
?dalam URL, sehingga mengabaikan semua pengaturan parameter permintaan dalam konfigurasi Custom Cache Key Anda. Nonaktifkan pengabaian parameter sebelum menggunakan Custom Cache Key.Custom Cache Key dapat menggantikan pengabaian parameter untuk konfigurasi kunci cache dan menawarkan fungsionalitas yang lebih komprehensif. Kami merekomendasikan penggunaannya terlebih dahulu. Berikut perbandingan konfigurasinya:
Skenario
Konfigurasi Pengabaian Parameter
Konfigurasi Kunci Cache Kustom
Abaikan semua parameter permintaan dalam kunci cache
Atur Ignore Parameters ke Yes dan biarkan Retain Specified Parameters kosong.
Tambahkan aturan penanganan parameter permintaan:
Action: Retain
Parameter name: Atur ke nama parameter apa pun yang tidak ada, misalnya example-argument.
Pertahankan hanya parameter permintaan key1 dalam kunci cache
Atur Ignore Parameters ke Yes dan atur Retain Specified Parameters ke
key1.Tambahkan aturan penanganan parameter permintaan:
Action: Retain
Parameter name: key1
Hapus hanya parameter permintaan key1 dari kunci cache
Hapus pengaturan parameter untuk
key1.Tambahkan aturan penanganan parameter permintaan:
Action: Delete
Parameter name: key1
Rewrite Origin Parameters dapat menggantikan pengabaian parameter untuk penulisan ulang permintaan origin dan menawarkan fungsionalitas yang lebih komprehensif. Kami merekomendasikan penggunaannya terlebih dahulu.
Ikhtisar Fitur
Abaikan Parameter
Fungsi | Skenario |
Menghapus parameter kueri (bagian setelah | Aktifkan pengabaian parameter saat parameter URL tidak terkait dengan konten resource (seperti UID pengguna, sumber referral, atau kode promo). Misalnya, dua permintaan berikut mengakses resource yang sama tetapi membawa UID berbeda: User A: User B: Tanpa pengabaian parameter, node edge CDN menganggap ini sebagai resource berbeda dan tidak dapat berbagi cache yang sama, sehingga memerlukan pengambilan asal untuk setiap permintaan. Dengan pengabaian parameter diaktifkan, node edge CDN menghapus parameter dan menggunakan |
URL signing memiliki prioritas lebih tinggi daripada pengabaian parameter. Penandatanganan Tipe A menyertakan parameter URL dalam signature-nya. CDN melakukan otentikasi terlebih dahulu dan hanya menyimpan replika cache setelah validasi berhasil.
Pertahankan Parameter Origin
Fungsi | Skenario |
Memertahankan semua parameter URL asli selama pengambilan asal untuk memastikan server origin menerima informasi pengguna yang penting. | Saat pengabaian parameter diaktifkan, node edge CDN secara default menggunakan URL tanpa parameter untuk pengambilan asal. Pada contoh di atas, baik User A maupun User B akan memicu permintaan asal ke |
Prosedur
Masuk ke CDN console.
Di panel navigasi sebelah kiri, klik Domain Names.
Dalam daftar domain, klik nama domain target. Di panel navigasi sebelah kiri, klik Optimization untuk membuka halaman konfigurasi optimasi performa.
Klik Modify di bagian Ignore Parameters. Pilih mode dan lengkapi konfigurasi sesuai kebutuhan Anda.
Setelah menyelesaikan konfigurasi, klik OK untuk menyimpan.
Mengganti mode akan menghapus konfigurasi yang ada.
Setelah mengubah konfigurasi pengabaian parameter, file cache pada node edge tidak diperbarui secara otomatis. Anda harus melakukan URL refresh atau directory refresh di konsol untuk menerapkan konfigurasi baru dan membersihkan cache lama. Jika tidak, pengguna mungkin masih mengakses konten yang di-cache berdasarkan kebijakan lama, sehingga menyebabkan masalah akses.
Mode: Retain Specified Parameters
Parameter | Deskripsi | Contoh |
Ignore Parameters |
| Asumsikan URL aslinya adalah
|
Retain Specified Parameters | Masukkan nama parameter yang ingin dipertahankan. Anda dapat menentukan hingga 10 parameter, dipisahkan dengan koma (,). | |
Retain Origin Parameters |
| |
Rule Condition | Kondisi aturan memungkinkan suatu aturan diterapkan hanya ketika permintaan memenuhi kriteria tertentu. Penting
Saat suatu fitur merujuk pada kondisi aturan, urutan eksekusi mengikuti prioritas kondisi aturan terkait, bukan urutan konfigurasi fitur.
|
Mode: Delete Specified Parameters
Parameter | Deskripsi | Contoh |
Remove Specified Parameters | Masukkan nama parameter yang ingin dihapus. Anda dapat menentukan hingga 10 parameter, dipisahkan dengan spasi. | Asumsikan URL aslinya adalah
|
Retain Origin Parameters |
| |
Rule Condition | Kondisi aturan memungkinkan suatu aturan diterapkan hanya ketika permintaan memenuhi kriteria tertentu. Penting
Saat suatu fitur merujuk pada kondisi aturan, urutan eksekusi mengikuti prioritas kondisi aturan terkait, bukan urutan konfigurasi fitur.
|
FAQ
Bagaimana cara mengatasi masalah bisnis setelah mengaktifkan pengabaian parameter?
Setelah mengaktifkan pengabaian parameter, CDN memperlakukan permintaan dengan parameter berbeda sebagai resource yang sama untuk caching. Jangan mengabaikan parameter URL secara global jika termasuk dalam kategori berikut:
Identifikasi identitas pengguna (seperti UID, Token, Session ID): Mengabaikannya menyebabkan kegagalan autentikasi atau kebocoran data antar pengguna.
Diferensiasi konten dinamis (seperti nomor versi
?v=1atau pagination?page=2): Mengabaikannya mengembalikan konten cache yang salah.Instruksi pemrosesan origin (seperti parameter pemrosesan gambar OSS
x-oss-process): Mengabaikannya menonaktifkan pemrosesan dan mengembalikan resource asli yang belum diproses.
Langkah troubleshooting dan penyelesaian:
Hapus atau nonaktifkan konfigurasi Ignore Parameters.
Setelah mengubah konfigurasi, lakukan pembersihan cache (URL refresh atau directory refresh) untuk menghapus cache lama dari node edge.
Jika beberapa parameter harus dipertahankan, gunakan mode Retain Specified Parameters untuk mempertahankan parameter penting (seperti
x-oss-processatautoken).
Mengapa konfigurasi pengabaian parameter tidak berlaku setelah dimodifikasi?
Setelah memodifikasi konfigurasi pengabaian parameter, file cache pada node edge tidak diperbarui secara otomatis. Jika masalah akses tetap berlanjut atau lalu lintas kembali ke asal tidak berkurang, ikuti langkah-langkah berikut:
Konfirmasi konfigurasi telah disimpan: Masuk ke CDN console, kunjungi kembali halaman konfigurasi pengabaian parameter, dan verifikasi bahwa pengaturan saat ini sesuai dengan harapan Anda.
Periksa adanya konflik dengan Custom Cache Key: Pengabaian parameter dan Custom Cache Key tidak dapat digunakan bersamaan. Mengaktifkan pengabaian parameter mengabaikan pengaturan parameter permintaan dalam Custom Cache Key. Pastikan kedua fitur tidak diaktifkan secara bersamaan.
Lakukan pembersihan cache: Konfigurasi baru langsung berlaku, tetapi file cache yang sudah ada tetap menggunakan kebijakan lama. Anda harus melakukan URL refresh atau directory refresh di halaman Refresh and Prefetch Resources untuk menghapus cache lama dan menerapkan sepenuhnya konfigurasi baru.
Verifikasi konfigurasi: Gunakan perintah
curl -I "full URL"untuk memeriksa bidangX-Cachedalam header respons dan pastikan status hit cache sesuai harapan.
Bagaimana cara mengonfigurasi pengabaian parameter saat menggunakan pemrosesan gambar OSS atau tangkapan video?
Saat menggunakan pemrosesan gambar OSS (seperti x-oss-process=image/resize,w_200) atau fitur tangkapan video, mengaktifkan pengabaian parameter pada domain CDN Anda menyebabkan URL resource asli dan URL resource yang telah diproses di-cache sebagai file yang sama, sehingga mengakibatkan pengiriman konten yang salah.
Solusi: Di konfigurasi pengabaian parameter CDN console, atur parameter x-oss-process ke mode Retain Specified Parameters. Hal ini memastikan URL dengan parameter pemrosesan gambar di-cache secara terpisah, sehingga menghindari konflik dengan cache resource asli.
Bagaimana saya dapat menggunakan pengabaian parameter untuk menangani permintaan yang melewati cache menggunakan parameter URL?
Saat penyerang atau crawler menambahkan parameter acak yang tidak berarti (seperti ?timestamp=xxx atau ?random=xxx) untuk meminta resource yang sama, CDN memperlakukan setiap permintaan berparameter sebagai resource unik. Hal ini mengurangi rasio hit cache dan meningkatkan lalu lintas kembali ke asal.
Aktifkan pengabaian parameter (atau konfigurasikan untuk mengabaikan semua parameter) sehingga permintaan dengan parameter acak berbeda mengakses cache yang sama, sehingga secara efektif mengurangi beban pada origin. Misalnya, setelah mengaktifkan pengabaian parameter, permintaan berikut mengakses cache yang sama:
http://example.com/page.html?t=123456http://example.com/page.html?t=789012http://example.com/page.html?random=abc
Dengan pengabaian parameter diaktifkan, semua permintaan ini menggunakan http://example.com/page.html untuk mencocokkan cache, sehingga secara efektif mengurangi serangan bypass cache melalui parameter URL.
Mengapa klien berbeda menunjukkan status hit cache yang tidak konsisten (X-Cache menampilkan MISS) setelah mengaktifkan pengabaian parameter?
Penyebab yang mungkin:
URL membawa parameter autentikasi dinamis yang tidak diabaikan: Jika URL menyertakan parameter seperti
auth_keydengan nilai berbeda per permintaan, CDN memperlakukannya sebagai resource berbeda meskipun pengabaian parameter diaktifkan (jika parameter autentikasi tersebut tidak dipertahankan).Akses pertama ke node yang belum memiliki cache: Resource belum di-cache pada node edge tersebut, sehingga akses pertama selalu menampilkan MISS.
Perbedaan header permintaan klien: Variasi pada header seperti
Accept-EncodingatauUser-Agentdapat memicu beberapa replika cache (misalnya, versi Gzip dan non-Gzip yang terpisah).Konflik dengan Custom Cache Key, menyebabkan konfigurasi tidak efektif.
Metode troubleshooting: Jalankan curl -I "full URL" pada klien dan bandingkan header respons X-Cache dan X-Swift-CacheTime untuk memastikan status cache.
Solusi: Verifikasi bahwa pengabaian parameter dikonfigurasi dengan benar (diaktifkan dan parameter penting diatur untuk dipertahankan) serta pastikan kebijakan header permintaan klien konsisten.
Bagaimana saya dapat mengontrol CDN untuk mengambil resource terbaru selama rilis bertahap atau pembaruan versi menggunakan parameter URL?
Jika pengabaian parameter diaktifkan, CDN tidak dapat membedakan versi menggunakan parameter URL (seperti ?v=1 atau ?v=2). Gunakan salah satu pendekatan berikut:
Pendekatan 1 (direkomendasikan): Gunakan nama file berbasis versi (seperti
style.v2.cssatauapp.v2.js) alih-alih hanya mengandalkan parameter kueri untuk memastikan pengguna mendapatkan konten terbaru.Pendekatan 2: Saat merilis versi baru, panggil secara proaktif refresh API CDN untuk membersihkan cache lama.