Saat server origin mengembalikan kode status non-2xx, titik keberadaan (POPs) Edge Security Acceleration (ESA) dapat menyimpan cache kode status tersebut. Selama periode validitas cache berlangsung, POPs merespons permintaan secara langsung, sehingga menghindari permintaan origin berulang dan mengurangi beban pada server origin.
Skenario
Secara normal, POP ESA menyimpan cache resource saat berhasil mengambilnya dari server origin yang mengembalikan kode status 2xx. Namun, jika server origin mengembalikan kode status non-2xx—seperti 404 atau 502—Anda dapat menghindari pengiriman semua permintaan kembali ke origin dengan mengonfigurasi waktu hidup (TTL) cache untuk kode status tersebut. POP ESA kemudian akan langsung merespons dengan kode status tersebut, sehingga mengurangi beban pada server origin Anda.
Skenario tipikal
File A telah dihapus dari server origin, tetapi klien terus mengaksesnya. Karena POP ESA belum menyimpan cache File A, semua permintaan untuk File A dikirim ke server origin. Server origin kemudian merespons dengan kode status 404, yang secara signifikan meningkatkan beban pada server origin.
Jika Anda mengonfigurasi POP ESA untuk menyimpan cache kode status 404, POP tersebut akan menyimpannya setelah pengambilan origin pertama. Selama periode validitas cache berlangsung, permintaan berikutnya akan menerima respons 404 langsung dari POP ESA, sehingga menghindari pengambilan origin dan mengurangi beban pada server origin.
Prosedur
Di Konsol ESA, pilih Site Management. Di kolom Website, klik situs target.
Di panel navigasi sebelah kiri, pilih .
Klik Create Rule dan masukkan Rule Name.
Di area If requests match..., atur atribut permintaan yang sesuai. Untuk informasi lebih lanjut tentang konfigurasi aturan, lihat Composition of rule expressions.
Di bagian Cache Eligibility, tentukan apakah akan melewati cache. Untuk informasi lebih lanjut, lihat Cache eligibility.
Di area Edge Status Code Cache TTL, klik Configure.
Di bagian Status Code Cache Rule, klik Add. Konfigurasikan parameter berikut, lalu klik OK:
Status Code: Kode status HTTP yang akan disimpan dalam cache. Mendukung kode status 4xx (kesalahan klien) dan 5xx (kesalahan sisi server), seperti 404, 502, dan 503.
Expired At: Periode lamanya POP menyimpan cache kode status tersebut. Nilainya dapat berkisar antara 1 detik hingga 31.536.000 detik (1 tahun). Setelah TTL berakhir, POP akan mengambil ulang kode status dari server origin.
Contoh konfigurasi
Skema 1: Simpan cache error 404 untuk resource statis
Kebutuhan bisnis: Gambar di folder gambar website mungkin dihapus, tetapi halaman antarmuka depan masih mereferensikan path lama.
Konfigurasi:
Matching condition: Path URL berisi
/imagesStatus code: 404
Cache TTL: 600 detik (10 menit)

Hasil: Saat permintaan pertama untuk gambar yang tidak ada dilakukan, POP mengambil respons 404 dari origin dan menyimpannya dalam cache selama 10 menit. Selama 10 menit berikutnya, permintaan berikutnya untuk gambar yang sama akan menerima respons 404 langsung dari POP tanpa perlu mengambil dari origin.
Skema 2: Cache jangka pendek saat server origin gagal
Kebutuhan bisnis: Server origin kadang-kadang tidak tersedia dalam waktu singkat dan mengembalikan error 5xx. Anda ingin memulihkan layanan dengan cepat.
Konfigurasi:
Matching condition: All Requests
Status code: 5xx
Cache TTL: 60 detik (1 menit)

Hasil: Saat server origin gagal, POP menyimpan cache kode status 5xx selama 1 menit. Hal ini mencegah banyak permintaan origin yang dapat meningkatkan beban pada server origin. Setelah 1 menit, POP akan mengambil ulang dari origin untuk memeriksa apakah server telah pulih.
Verifikasi konfigurasi
Setelah menyelesaikan konfigurasi, gunakan metode berikut untuk memverifikasi bahwa konfigurasi telah diterapkan.
Metode 1: Gunakan perintah curl
Bersihkan cache lokal dan kirim permintaan pertama:
curl -I https://example.com/non-existent-pageHeader respons harus berisi
x-site-cache-status: MISS. Ini menunjukkan pengambilan origin pertama.Segera minta kembali
URLyang sama:curl -I https://example.com/non-existent-pageHeader respons harus berisi
x-site-cache-status: HIT, yang menunjukkan adanya cache hit. Nilai bidang yang menunjukkan durasi cache juga akan otomatis bertambah.
Metode 2: Gunakan browser developer tools
Buka Chrome DevTools (tekan F12), alihkan ke tab Network, dan centang Preserve log.
Akses resource yang tidak ada, misalnya
https://example.com/test404.Lihat
Response Headersdi detail permintaan. Permintaan pertama menampilkanx-site-cache-status: MISS. Permintaan berikutnya menampilkanx-site-cache-status: HIT, dan nilai bidang yang menunjukkan durasi cache otomatis bertambah.
FAQ
Mengapa permintaan masih dikirim ke server origin setelah konfigurasi?
Cache telah kedaluwarsa: Periksa apakah nilai
TTLyang dikonfigurasi terlalu singkat. Anda dapat memeriksa header respons sepertiCache-Controluntuk memastikan masa hidup cache.Parameter URL berbeda: Secara default, parameter
URLyang berbeda dianggap sebagai kunci cache yang berbeda. Konfigurasikan aturan kunci cache untuk mengabaikan parameter yang tidak relevan.Aturan belum berlaku: Verifikasi kondisi pencocokan aturan, seperti pola path, untuk memastikan mencakup permintaan target.
Bagaimana cara memverifikasi status cache untuk URL tertentu?
Anda dapat menggunakan perintah curl untuk melihat header respons secara detail:
curl -v -I https://example.com/target-urlHeader respons penting:
x-site-cache-status: HIT— Cache hitx-site-cache-status: MISS— Cache miss, pengambilan origin dilakukanCache-Control:max-age=120— Cache telah aktif selama 120 detik
Bagaimana cara membersihkan cache secara manual untuk kode status tertentu?
Anda dapat refresh cache berdasarkan URL atau berdasarkan folder.
Dokumentasi terkait
Fitur terkait aturan memiliki variasi dalam prioritas efektif, reentrancy, dan granularitas efektif. Untuk detailnya, lihat Properties of Rule-Related Features.