Panduan Konfigurasi Kompresi CloudFront
Hasilkan konfigurasi perilaku CloudFront untuk kompresi Brotli dan GZIP dengan header Kontrol Cache yang benar - tidak perlu mendaftar. Panduan konfigurasi kompresi cloudfront menghasilkan kebijakan cache lengkap, kebijakan header respons, dan pengaturan distribusi dalam format langkah Konsol, Terraform, CloudFormation, AWS CDK, atau AWS CLI. Mendukung S3, ALB, API Gateway, EC2, dan asal kustom. Peringatan real-time untuk kunci cache Accept-Encoding yang hilang, header Vary yang hilang, dan masalah Brotli-over-HTTP. Semua generasi berjalan di browser Anda.
CloudFront Compression Config Guide
Origin Type
Output Format
Console Steps - CloudFront Compression Config
# AWS CloudFront Console - Step-by-Step Configuration ## Step 1: Create or Edit CloudFront Distribution 1. Open AWS Console → CloudFront → Distributions 2. Click "Create distribution" or select an existing one → Edit ## Step 2: Configure Origin - Origin domain: YOUR-BUCKET.s3.YOUR-REGION.amazonaws.com - Origin access: Origin access control settings (recommended) - Create new OAC → Sign requests → Save ## Step 3: Configure Default Cache Behavior - Viewer protocol policy: Redirect HTTP to HTTPS - Allowed HTTP methods: GET, HEAD - Compress objects automatically: Yes ← REQUIRED for compression ## Step 4: Create Cache Policy 1. CloudFront → Policies → Cache → Create cache policy - Name: CompressionCachePolicy - Default TTL: 86400 seconds (1d) - Maximum TTL: 31536000 seconds (52w) - Minimum TTL: 0 seconds - Cache key settings: ✓ Enable Accept-Encoding for Gzip: Yes ✓ Enable Accept-Encoding for Brotli: Yes Headers: None Cookies: None Query strings: None (or as needed) ## Step 5: Create Response Headers Policy 1. CloudFront → Policies → Response headers → Create response headers policy - Name: CompressionResponseHeaders - Custom headers: Header: Vary Value: Accept-Encoding Override: No - Security headers: Enable recommended security headers ## Step 6: Attach Policies to Behavior - Cache policy: CompressionCachePolicy (created above) - Response headers policy: CompressionResponseHeaders (created above) - Origin request policy: CORS-S3Origin (for S3) or None ## Step 7: Deploy and Verify - Click "Save changes" → Wait for distribution to deploy (Status: Deployed) - Test: curl -H "Accept-Encoding: gzip" -I https://YOUR-CLOUDFRONT-DOMAIN/app.js - Expected: Content-Encoding: gzip, X-Cache: Hit from cloudfront (2nd request)
Verification Commands
Verify GZIP
curl -H "Accept-Encoding: gzip" -I https://YOUR-CF-DOMAIN/app.js # Expected: Content-Encoding: gzip
Verify Brotli
curl -H "Accept-Encoding: br" -I https://YOUR-CF-DOMAIN/app.js # Expected: Content-Encoding: br
Check cache hit
curl -H "Accept-Encoding: gzip" -I https://YOUR-CF-DOMAIN/app.js # 2nd request: X-Cache: Hit from cloudfront
Mengapa Menggunakan Panduan Konfigurasi Kompresi CloudFront Kami?
- Pembuatan Konfigurasi Kompresi CloudFront Instan: Hasilkan konfigurasi kompresi CloudFront lengkap secara instan - panduan konfigurasi kompresi cloudfront menghasilkan langkah-langkah konsol, perintah Terraform, CloudFormation, CDK, dan AWS CLI dengan kebijakan cache yang benar, kebijakan header respons, dan pengaturan Brotli/GZIP.
- Panduan Konfigurasi Kompresi CloudFront Aman Online: Semua pembuatan konfigurasi berjalan sepenuhnya di browser Anda. Panduan konfigurasi kompresi cloudfront tidak pernah mengirimkan pengaturan Anda ke server mana pun - aman untuk menghasilkan konfigurasi untuk distribusi pribadi, API internal, dan pengaturan CloudFront eksklusif.
- 5 Format IaC + Peringatan Kesalahan Konfigurasi Real-Time: Hasilkan konfigurasi kompresi CloudFront dalam langkah Konsol, Terraform, CloudFormation, AWS CDK, atau format AWS CLI - semuanya dari opsi yang sama. Panduan konfigurasi kompresi cloudfront menunjukkan peringatan real-time untuk kunci cache Accept-Encoding yang hilang, header Vary yang hilang, dan masalah Brotli-over-HTTP.
- 100% Gratis Selamanya: Panduan konfigurasi kompresi cloudfront sepenuhnya gratis tanpa pendaftaran, tanpa tingkat premium, tanpa batasan, dan tanpa iklan. Hasilkan konfigurasi kompresi CloudFront untuk distribusi tak terbatas tanpa biaya, selamanya.
Kasus Penggunaan Umum untuk Panduan Konfigurasi Kompresi CloudFront
- Pengaturan Kompresi Situs Statis S3: Konfigurasikan CloudFront untuk melayani aset statis terkompresi GZIP dan Brotli dari bucket S3 - panduan konfigurasi kompresi cloudfront menghasilkan kebijakan cache yang benar dengan Accept-Encoding di kunci cache, memastikan CloudFront menyimpan varian terpisah untuk setiap pengkodean.
- Kompresi Respons API Gateway: Aktifkan kompresi CloudFront untuk asal API Gateway - panduan konfigurasi kompresi cloudfront menghasilkan konfigurasi perilaku yang benar dengan mengaktifkan Brotli dan GZIP, pengaturan TTL yang benar untuk respons API, dan header respons Vary: Accept-Encoding.
- Pengaktifan Kompresi Brotli: Mengaktifkan kompresi Brotli pada distribusi CloudFront yang saat ini hanya menggunakan GZIP - panduan konfigurasi kompresi cloudfront menunjukkan pengaturan kebijakan cache yang tepat yang diperlukan untuk menambahkan dukungan Brotli tanpa merusak perilaku cache GZIP yang ada.
- Migrasi Infrastruktur sebagai Kode: Buat kode Terraform, CloudFormation, atau CDK untuk konfigurasi kompresi CloudFront - panduan konfigurasi kompresi cloudfront menghasilkan kode IaC siap produksi yang dapat ditambahkan langsung ke repositori infrastruktur Anda yang ada.
- Pengoptimalan Kebijakan Cache: Konfigurasikan kebijakan cache CloudFront dengan nilai TTL yang benar untuk berbagai jenis aset - panduan konfigurasi kompresi cloudfront membantu Anda mengatur TTL Default, TTL Maksimum, dan TTL Minimum dengan benar untuk aset statis, halaman HTML, dan respons API.
- Audit Distribusi CloudFront: Audit distribusi CloudFront yang ada untuk mengetahui kesalahan konfigurasi kompresi - panduan konfigurasi kompresi cloudfront menunjukkan pengaturan yang benar dan menghasilkan perintah verifikasi curl untuk mengonfirmasi bahwa GZIP dan Brotli berfungsi dengan benar.
Apa itu Konfigurasi Kompresi CloudFront?
AWS CloudFront dapat mengompresi respons HTTP menggunakan GZIP dan Brotli sebelum mengirimkannya ke klien - mengurangi ukuran transfer sebesar 60-85% untuk aset berbasis teks (HTML, CSS, JavaScript, JSON). Konfigurasi kompresi CloudFront yang benar memerlukan tiga komponen yang bekerja bersama: (1) Objek kompresi diaktifkan secara otomatis pada perilaku cache, (2) kebijakan cache yang menyertakan Accept-Encoding dalam kunci cache sehingga CloudFront menyimpan varian terkompresi terpisah, dan (3) kebijakan header respons yang menambahkan Vary: Accept-Encoding sehingga cache hilir menangani varian pengkodean dengan benar. Panduan konfigurasi kompresi cloudfront kami menghasilkan ketiga komponen dalam format IaC pilihan Anda.
Cara Kerja Panduan Konfigurasi Kompresi CloudFront Kami
- 1 Pilih jenis asal dan pengaturan kompresi Anda: Pilih asal Anda (S3, ALB, API Gateway, EC2, atau kustom), aktifkan GZIP dan/atau Brotli, konfigurasikan nilai TTL, dan alihkan header Vary dan penerapan HTTPS. Panduan konfigurasi kompresi cloudfront memperbarui konfigurasi yang dihasilkan secara instan dan menampilkan peringatan untuk kesalahan konfigurasi.
- 2 Pilih format output Anda: Pilih Langkah Konsol untuk pengaturan manual, Terraform untuk IaC, CloudFormation untuk IaC asli AWS, CDK untuk kode infrastruktur TypeScript, atau AWS CLI untuk penerapan baris perintah. Semua format menghasilkan konfigurasi lengkap dan siap produksi. Pengaturan Anda tidak pernah meninggalkan browser Anda.
- 3 Salin dan terapkan: Salin konfigurasi yang dihasilkan dengan satu klik dan terapkan ke distribusi CloudFront Anda. Gunakan perintah curl verifikasi bawaan untuk mengonfirmasi GZIP dan Brotli berfungsi dengan benar dan periksa header X-Cache untuk memverifikasi perilaku cache hit.
Pengaturan Kompresi Utama CloudFront
- Kompres objek secara otomatis: Sakelar utama untuk kompresi CloudFront - harus disetel ke true pada perilaku cache. CloudFront hanya mengompresi objek berukuran ≥1000 byte dengan header Tipe Konten yang didukung. Objek dengan Pengodean Konten yang sudah disetel dilewatkan tanpa kompresi ulang.
- Kebijakan cache - Terima-Pengkodean dalam kunci cache: Pengaturan paling penting - EnableAcceptEncodingGzip: true dan EnableAcceptEncodingBrotli: true memberitahu CloudFront untuk menyimpan varian terpisah untuk setiap pengkodean. Tanpa ini, CloudFront hanya menyimpan satu varian dalam cache dan mungkin menyajikan pengkodean yang salah kepada klien.
- Kebijakan header respons - Vary: Accept-Encoding: Menambahkan Vary: Accept-Encoding ke semua respons, memberi tahu browser dan cache perantara untuk menyimpan varian terpisah per pengkodean. Diperlukan untuk perilaku yang benar ketika CloudFront berada di belakang CDN atau proksi lain.
- Brotli memerlukan HTTPS: Browser hanya mengirim Accept-Encoding: br melalui koneksi HTTPS. Koneksi HTTP hanya akan menerima respons GZIP atau tidak terkompresi. Selalu aktifkan kebijakan protokol penampil pengalihan ke https saat menggunakan Brotli.
Kompresi CloudFront vs Kompresi Asal
CloudFront mendukung dua mode kompresi: kompresi otomatis (CloudFront mengompresi saat itu juga) dan aset pra-kompresi (asal menyajikan file dengan Pengodean Konten yang sudah disetel). Untuk respons API dinamis, kompresi otomatis adalah satu-satunya pilihan. Untuk aset statis (JS, CSS, HTML), melakukan pra-kompresi pada waktu pembuatan dan mengunggah ke S3 dengan Content-Encoding: gzip atau Content-Encoding: br lebih efisien - ini menghilangkan overhead CPU kompresi CloudFront dan memungkinkan penggunaan tingkat kompresi yang lebih tinggi (GZIP level 9, Brotli level 11). Panduan konfigurasi kompresi cloudfront menghasilkan konfigurasi yang benar untuk kedua mode.
Pertanyaan yang Sering Diajukan
Panduan konfigurasi kompresi cloudfront menghasilkan konfigurasi perilaku CloudFront lengkap untuk kompresi Brotli dan GZIP - termasuk kebijakan cache, kebijakan header respons, dan header Kontrol Cache yang benar. Panduan konfigurasi kompresi cloudfront gratis kami secara online menghasilkan langkah-langkah konsol, keluaran Terraform, CloudFormation, CDK, dan AWS CLI. Semua generasi berjalan di browser Anda tanpa perlu mendaftar.
Ya. CloudFront mendukung kompresi Brotli ketika "Kompres objek secara otomatis" diaktifkan dan kebijakan cache mencakup EnableAcceptEncodingBrotli: true. CloudFront menyajikan Brotli kepada klien yang mengirim Accept-Encoding: br (semua browser modern melalui HTTPS) dan secara otomatis kembali ke GZIP untuk klien lama.
Ya. Semua pembuatan konfigurasi berjalan sepenuhnya di browser Anda menggunakan JavaScript. Tidak ada data konfigurasi yang dikirim ke server mana pun, disimpan dari jarak jauh, atau dikirim melalui jaringan.
Ya - 100% gratis, selamanya. Tanpa pendaftaran, tanpa akun, tanpa tingkat premium, tanpa batasan, dan tanpa iklan.
Tanpa Accept-Encoding di kunci cache, CloudFront hanya menyimpan satu varian dari setiap objek. Jika varian terkompresi di-cache terlebih dahulu, CloudFront akan menyajikannya ke klien yang tidak mendukung kompresi, sehingga menyebabkan unduhan rusak. EnableAcceptEncodingGzip dan EnableAcceptEncodingBrotli dalam kebijakan cache memperbaikinya.
CloudFront hanya mengompresi objek yang berukuran minimal 1.000 byte (1 KB). Objek yang lebih kecil dari 1 KB disajikan tanpa kompresi karena overhead header GZIP/Brotli akan membuatnya lebih besar. Objek dengan Pengkodean Konten yang sudah disetel oleh asal akan diteruskan tanpa kompresi ulang.
Untuk aset statis (JS, CSS, HTML) yang dilayani dari S3, pra-kompresi pada waktu build lebih efisien - ini menghilangkan overhead CPU kompresi CloudFront dan memungkinkan penggunaan tingkat kompresi yang lebih tinggi. Untuk respons API dinamis, kompresi otomatis CloudFront adalah satu-satunya pilihan.
Browser hanya mengirim Accept-Encoding: br melalui koneksi HTTPS. Koneksi HTTP hanya akan menerima respons GZIP atau tidak terkompresi. Selalu aktifkan kebijakan protokol penampil pengalihan ke https saat menggunakan Brotli.
Gunakan curl: curl -H "Terima-Encoding: gzip" -I https://YOUR-CF-DOMAIN/app.js. Cari Content-Encoding: gzip dan Vary: Accept-Encoding sebagai responsnya. Periksa X-Cache: Tekan dari cloudfront pada permintaan kedua untuk mengonfirmasi bahwa cache berfungsi.