
Sayfanız 800 kilobayt. Sunucudan tarayıcıya bu boyutta gitmesi gerekmiyor — doğru yapılandırmayla üçte birine inebilir ve bunun için tek bir dosyaya bile dokunmanız gerekmez.
Bu yazı, aktarım sıkıştırmasının nasıl çalıştığını ve hosting hesabınızda nasıl açılacağını ele alıyor.
Nasıl Çalışır?
Sıkıştırma, dosyayı diskte değil aktarım sırasında küçültür:
- Tarayıcı isteğinde hangi sıkıştırma yöntemlerini desteklediğini bildirir
- Sunucu bunlardan birini seçer
- İçeriği sıkıştırıp gönderir
- Yanıtta hangi yöntemi kullandığını belirtir
- Tarayıcı açar ve işler
Önemli nokta şudur: diskteki dosyalarınız değişmez, yalnızca ağdan geçen veri küçülür. Kodunuzda hiçbir değişiklik gerekmez.
Süreç tamamen otomatiktir ve desteklenmeyen bir tarayıcı gelirse sıkıştırılmamış sürüm gönderilir.
İki Yöntem
Bugün pratikte iki sıkıştırma yöntemi kullanılır:
| Özellik | Karşılaştırma |
|---|---|
| Yaygınlık | Gzip her yerde, Brotli çok yaygın |
| Sıkıştırma oranı | Brotli daha iyi |
| İşlemci maliyeti | Brotli yüksek seviyelerde daha ağır |
| Şifresiz bağlantı | Brotli genellikle yalnızca HTTPS'te |
Doğru kurulum ikisini birden açmaktır: tarayıcı Brotli destekliyorsa o kullanılır, desteklemiyorsa Gzip devreye girer.
Bu sayede hem yeni tarayıcılarda daha iyi oran elde edilir hem eski istemcilerde koruma sürer.
Hangi Dosyalar Sıkıştırılmalı?
Her dosya türü sıkıştırmadan fayda görmez:
- Sıkıştırın: HTML, CSS, JavaScript, JSON, XML, düz metin, SVG.
- Sıkıştırmayın: JPEG, PNG, WebP, MP4, ZIP, PDF.
İkinci grup zaten sıkıştırılmış biçimlerdir: sıkıştırılmış bir dosyayı tekrar sıkıştırmak boyutu küçültmez, hatta bazen büyütür ve boşuna işlemci harcar.
Bu ayrımı yapılandırmada açıkça belirtmek gerekir. Tüm içeriği sıkıştırmaya çalışan bir kurulum, görsel ağırlıklı sayfalarda sunucu yükünü gereksiz yere artırır.
SVG özellikle unutulan bir kalemdir — metin tabanlı olduğu için çok iyi sıkışır ama uzantısı görsel çağrıştırdığı için listeye eklenmeyi unutur.
Sıkıştırma Seviyesi
Sıkıştırma araçları farklı yoğunluk seviyeleri sunar ve varsayılan her zaman doğru değildir:
- Düşük seviye: Hızlı, oran düşük.
- Orta seviye: Dengeli — çoğu site için doğru.
- Yüksek seviye: En iyi oran, işlemci maliyeti yüksek.
Kritik ayrım şudur: dinamik olarak üretilen sayfalar her istekte yeniden sıkıştırılır, statik dosyalar ise bir kez sıkıştırılıp saklanabilir.
Bu yüzden dinamik içerikte orta seviye, önceden sıkıştırılıp saklanan statik dosyalarda en yüksek seviye mantıklıdır. Statik dosyada sıkıştırma maliyeti bir kez ödenir, kazanç her istekte alınır.
Önceden Sıkıştırma
Statik dosyalar için daha verimli bir yöntem vardır:
- Dosyanın sıkıştırılmış sürümünü önceden oluşturun.
- Yan yana saklayın. Aynı ad, ek uzantı.
- Sunucu hazır sürümü sunsun. Anlık sıkıştırma yapmasın.
- Dosya değiştikçe yeniden üretin.
Kazanç belirgindir: her istekte harcanan işlemci zamanı tamamen ortadan kalkar ve en yüksek sıkıştırma seviyesini maliyetsiz kullanabilirsiniz.
Dördüncü madde ise dikkat gerektirir — dosyayı güncelleyip sıkıştırılmış sürümü yenilemeyi unutursanız, ziyaretçilere eski içerik gider ve bu sorunun teşhisi zordur.
Hosting Hesabında Açmak
Paylaşımlı hostingde sıkıştırma genellikle üç yerden yönetilir:
| Yer | Durum |
|---|---|
| Kontrol panelinde bir seçenek | En kolay — varsa kullanın |
| Dizin yapılandırma dosyası | Yaygın yöntem |
| Uygulama seviyesinde | Son çare — verimsiz |
Üçüncü satır neden son çare? Çünkü uygulama seviyesinde yapılan sıkıştırma yalnızca PHP çıktısını kapsar — stil dosyaları ve betikler sıkıştırılmadan gider.
Oysa bu iki dosya türü genellikle sayfanın en büyük parçasıdır. Sunucu seviyesinde yapılandırma, tüm içeriği kapsadığı için çok daha etkilidir. Hangi seçeneğin mevcut olduğu paket türüne göre değişir — Linux tabanlı hosting paketlerinde bu ayar çoğunlukla dizin yapılandırma dosyasıyla yönetilir.
Çalıştığını Doğrulamak
Sıkıştırmanın gerçekten devrede olduğunu kontrol edin:
- Tarayıcı geliştirici araçlarında ağ sekmesini açın
- Bir sayfa yükleyin
- Yanıt başlıklarında sıkıştırma bilgisini arayın
- Aktarılan boyut ile gerçek boyutu karşılaştırın
- Stil ve betik dosyalarını da ayrıca kontrol edin
Dördüncü madde kazancı doğrudan gösterir: tarayıcı hem ağdan geçen boyutu hem açılmış boyutu ayrı ayrı raporlar ve aradaki fark sıkıştırmanın kazancıdır.
Beşinci madde kısmi kurulumları yakalar. HTML sıkıştırılıyor ama betikler sıkıştırılmıyorsa, yapılandırmanız eksiktir.
Diğer Optimizasyonlarla İlişki
Sıkıştırma tek başına düşünülmemelidir:
- Önce gereksiz kodu silin. Sıkıştırma çöpü de sıkıştırır.
- Küçültme ile birlikte kullanın. Boşluk ve yorum temizliği.
- Önbellek başlıklarını unutmayın. Hiç indirmemek en iyisidir.
- Görselleri ayrıca optimize edin. Sıkıştırma onları kapsamaz.
Üçüncü madde en büyük kazancı işaret eder: sıkıştırılmış bir dosyayı hızlı indirmek iyidir ama önbellekten hiç indirmemek daha iyidir.
Dördüncü madde ise ölçek farkını gösterir — tipik bir sayfada görseller toplam boyutun büyük kısmını oluşturur ve sıkıştırma bunlara dokunmaz. Görsel optimizasyonu ayrı ve genellikle daha kazançlı bir iştir.
Sonuç
Aktarım sıkıştırması, kodunuza hiç dokunmadan sayfa boyutunu belirgin şekilde düşüren nadir optimizasyonlardan biri — diskteki dosyalar değişmez, yalnızca ağdan geçen veri küçülür. Gzip ve Brotli'yi birlikte açın, ama zaten sıkıştırılmış görsel ve video biçimlerini listeye eklemeyin: tekrar sıkıştırmak boyutu küçültmez, boşuna işlemci harcar. Kurulumu uygulama seviyesinde değil sunucu seviyesinde yapın — uygulama seviyesindeki sıkıştırma stil ve betik dosyalarını kapsamaz, oysa sayfanın en büyük parçası genellikle onlardır.
Sıkça Sorulan Sorular (SSS)
Gzip mi Brotli mi kullanmalıyım?
İkisini birden açın. Tarayıcı Brotli destekliyorsa o kullanılır ve daha iyi oran verir; desteklemiyorsa Gzip devreye girer. Bu sayede yeni tarayıcılarda kazanç artar, eski istemcilerde koruma sürer.
Görselleri de sıkıştırmalı mıyım?
Hayır. JPEG, PNG, WebP, MP4 ve ZIP gibi biçimler zaten sıkıştırılmıştır; tekrar sıkıştırmak boyutu küçültmez, hatta bazen büyütür ve boşuna işlemci harcar. Ancak SVG'yi listeye eklemeyi unutmayın — metin tabanlıdır ve çok iyi sıkışır.
Hangi sıkıştırma seviyesini seçmeliyim?
Dinamik sayfalarda orta seviye, önceden sıkıştırılıp saklanan statik dosyalarda en yüksek seviye. Dinamik içerik her istekte yeniden sıkıştırılır, bu yüzden işlemci maliyeti sürekli ödenir; statik dosyada ise maliyet bir kez ödenir, kazanç her istekte alınır.
Sıkıştırmanın çalıştığını nasıl anlarım?
Tarayıcının geliştirici araçlarında ağ sekmesine bakın: yanıt başlıklarında hangi sıkıştırmanın kullanıldığı yazar ve aktarılan boyut ile açılmış boyut ayrı ayrı gösterilir. Sadece HTML'i değil, stil ve betik dosyalarını da ayrıca kontrol edin.