HTTP sıkıştırması, metin ağırlıklı kaynakların ağ üzerinden daha az baytla aktarılmasına yardımcı olur. HTML, CSS, JavaScript ve bazı SVG dosyaları bu açıdan değerlendirilebilir. JPEG veya WebP gibi zaten sıkıştırılmış görsellerde aynı kazanç beklenmez. Sıkıştırma, dosyanın gereksiz içeriğini kaldırmanın veya doğru önbellek ayarının yerine geçmez. Önce tarayıcıya gerçekten hangi yanıtın, hangi kodlama ve boyutla ulaştığını ölçün; sunucuda bir modülün açık görünmesi tek başına yeterli kanıt değildir.
Başlamadan önce
Web sunucusu ve varsa CDN yönetimine erişiminiz olmalıdır. Sunucunun desteklediği sıkıştırma modüllerini, hosting sağlayıcınızın izin verdiği yapılandırmayı ve mevcut kuralları inceleyin. Değişiklikleri önce test ortamında uygulayın. Bir HTML, CSS ve JavaScript dosyası seçerek sıkıştırmadan önceki yanıt başlıklarını kaydedin. Uygulamanın kendi çıkış sıkıştırması varsa sunucu katmanıyla iki kez uygulanmadığını kontrol edin.
Uygulama adımları
- Mevcut aktarımı ölçün
Tarayıcı ağ panelinde Content-Encoding başlığını ve transfer boyutunu inceleyin. Kaynak dosyanın açılmış boyutu ile ağda aktarılan boyut aynı kavram değildir. DevTools önbellekten alınan dosya gösteriyorsa ilk aktarım boyutunu değerlendirmek için kontrollü bir yeniden yükleme kullanın.
- Uygun MIME türlerini seçin
Metin dosyaları sunucudan doğru Content-Type ile gelmelidir. Yanlış türü dönen CSS veya JSON, sıkıştırma kuralı dışında kalabilir. Bütün uzantıları tek bir içerik türüne çevirmek hatalıdır; tarayıcının dosyayı doğru işlemesini ve güvenlik başlıklarını koruyun.
- Sunucu desteğine göre yapılandırın
Apache veya nginx kuralları kullanılan yazılıma göre farklıdır. Paylaşımlı hostingde desteklenmeyen bir direktifi .htaccess içine eklemek 500 hatasına yol açabilir. Mevcut modülün ve sağlayıcı politikalarının izin verdiği kuralı seçin; başka bir sunucunun ayarını körlemesine kopyalamayın.
- CDN davranışını ayrı kontrol edin
Origin yanıtı ile CDN’nin kullanıcıya sunduğu yanıt farklı olabilir. CDN kaynakları yeniden sıkıştırabilir veya belirli türlerde farklı kodlama seçebilir. Kullanıcıya ulaşan son yanıtı ölçün; yalnızca origin testiyle canlı aktarımın aynı olduğuna karar vermeyin.
- Önbellek çeşitlerini koruyun
İstemcinin kabul ettiği kodlama ve sunulan yanıtın uygun varyant olması gerekir. Aradaki cache katmanlarında sıkıştırılmış ile sıkıştırılmamış sürümlerin karışmadığını kontrol edin. Yanlış varyant bozuk içerik veya beklenmeyen indirme üretebilir; başlıkları birlikte değerlendirin.
- Boyut ve kaynak yükünü karşılaştırın
Sıkıştırma düzeyini yükseltmek her zaman en iyi toplam sonuç değildir; sunucu işlem maliyeti artabilir. Önce aktarılan boyut, yanıt süresi ve işlevi ölçün. Kritik sayfaların açılmasını ve formların doğru çalışmasını test etmeden yalnızca dosya küçülmesini başarı saymayın.
Sonucu doğrulama
Seçilen metin kaynaklarında beklenen Content-Encoding ve azalan aktarım boyutunu doğrulayın. Dosyalar tarayıcıda doğru açılmalı, CSS uygulanmalı ve script hatası oluşmamalıdır. Önbellekli ve yeni istekleri ayrı gözden geçirin. Farklı istemci koşulları desteklenmelidir; her tarayıcı aynı kodlamayı istemeyebilir. Canlı URL ile doğrudan origin testinin farklı katmanları ölçtüğünü kayıtlarında açıkça belirtin.
Sık karşılaşılan sorunlar
Sıkıştırma görünmüyorsa kaynağın türünü, boyut eşiğini, proxy veya CDN politikasını inceleyin. Sunucuda modül kapalıysa desteklenmeyen kural eklemek çözüm değildir. 500 oluştuysa son yapılandırma değişikliğini geri alın ve hata logunu kontrol edin. Kaynak bozuk görünüyorsa çift sıkıştırma veya yanlış başlık olasılığını değerlendirin. Zaten küçük bir dosyada büyük kazanç beklemek yerine genel aktarım ve render darboğazlarını birlikte inceleyin.
Uygulama örneği
Bir tema CSS dosyası 200 KB açılmış içerik taşıyıp 40 KB aktarılabilir; bu iki değer birbirine karıştırılmamalıdır. Dosyanın hâlâ gereksiz eski kurallar taşıması da mümkündür. Sıkıştırma aktarımı azaltırken gereksiz CSS temizliği dosyanın işlenmesini ve bakımını iyileştirebilir. İki değişikliği ayrı test edip sayfanın görünümünü ve işlevini koruyun.
Sık sorulan sorular
Brotli her zaman gzip’ten daha iyi mi?
Sonuç içerik, düzey, işlem maliyeti ve sunucu desteğine bağlıdır. Gzip çalışan bir ortamda desteklenmeyen Brotli kuralı eklemek yerine uygun yapılandırmayı ve ölçülen aktarımı değerlendirin. Tercihi gerçek sonuçla verin.
WebP görselleri yeniden sıkıştırmalı mıyım?
Genellikle metin kaynaklarındaki kadar kazanç beklenmez. Görselin kodlama biçimi zaten sıkıştırılmıştır. Görsel optimizasyonunu ölçü, kalite ve doğru varyant seçimi üzerinden ayrı ele alın; tüm dosyalara aynı aktarım stratejisini uygulamayın.
İlgili rehberler
Süreç özeti
İşlem ve doğrulama sırası
| Adım | Kontrol |
|---|---|
| 1 | Aktarım başlığını incele |
| 2 | Metin kaynaklarını seç |
| 3 | Tek katmanda uygula |
| 4 | Boyut ve işlevi karşılaştır |
