Makale Başlıkları
- HTTP Sıkıştırma Aslında Ne Yapıyor?
- Gzip Nedir?
- Brotli Nedir ve Neyi Farklı Yapar?
- Gzip mi, Brotli mi? Yan Yana Karşılaştırma
- LiteSpeed Üzerinde Sıkıştırma
- Apache Üzerinde Etkinleştirme (.htaccess)
- Nginx Üzerinde Etkinleştirme
- Doğru Sıkıştırma Seviyesini Seçmek
- Sıkıştırmanın Çalıştığını Nasıl Doğrularsınız?
- Alastyr Altyapısında Sıkıştırma
- Sıkça Sorulan Sorular
Kısaca
Gzip ve Brotli, sunucunuzun tarayıcıya gönderdiği HTML, CSS ve JavaScript dosyalarını yolda küçültüp yeniden açan sıkıştırma algoritmalarıdır. Doğru yapılandırıldığında sayfa boyutunu %70’e kadar düşürür, ilk yüklenme süresini ve mobil veri tüketimini ciddi biçimde azaltır. Brotli metin dosyalarında Gzip’ten daha iyi sıkıştırır; ikisini birlikte, akıllı bir geri dönüş (fallback) düzeniyle kullanmak 2026’da en sağlıklı yaklaşımdır.
- Brotli, metin tabanlı içerikte Gzip’e göre ortalama %15-25 daha küçük çıktı üretir.
- Sıkıştırma yalnızca metin dosyalarına uygulanır; JPEG, PNG, WebP gibi zaten sıkışık görseller tekrar sıkıştırılmaz.
- LiteSpeed, Apache, Nginx ve cPanel’de birkaç satır ayarla ya da .htaccess ile etkinleştirilir; doğrulaması curl ile 30 saniye sürer.
Bir web sayfasını açtığınızda tarayıcınız ile sunucu arasında görünmeyen bir pazarlık yaşanır. Tarayıcı der ki “ben sıkıştırılmış içerik alabilirim”, sunucu da elindeki dosyayı en uygun yöntemle küçültüp gönderir. İşte bu pazarlığın iki ana oyuncusu Gzip ve Brotli sıkıştırma algoritmalarıdır. Aralarındaki fark, aynı sayfanın 400 KB yerine 120 KB olarak inmesi anlamına gelebilir; bu da özellikle mobil bağlantılarda gözle görülür bir hız kazancı demektir.
Bu yazıda sıkıştırmanın nasıl çalıştığını, Gzip ile Brotli arasındaki gerçek farkları ve farklı sunucu ortamlarında adım adım nasıl etkinleştirileceğini anlatıyoruz. Amacımız, sizi teorik bir tanımla baş başa bırakmak değil; işi bitince “çalışıyor mu” sorusunu net bir komutla yanıtlayabilecek hale getirmek.
HTTP Sıkıştırma Aslında Ne Yapıyor?
Web sıkıştırması, dosyanın içeriğini bozmadan boyutunu düşürmeye yarayan kayıpsız (lossless) bir işlemdir. Mantık şudur: bir HTML veya CSS dosyasında sürekli tekrar eden karakter dizileri vardır — boşluklar, div etiketleri, color: gibi özellik adları. Sıkıştırma algoritması bu tekrarları kısa referanslarla değiştirir. Tarayıcı dosyayı aldığında bu referansları geri açar ve orijinal metni eksiksiz elde eder.
Süreç üç adımda işler:
- Tarayıcı isteğine Accept-Encoding: gzip, br başlığını ekler ve “ben şu formatları çözebilirim” der.
- Sunucu, desteklediği en iyi formatı seçer, dosyayı o formatta sıkıştırır ve yanıta Content-Encoding: br (ya da gzip) başlığını koyar.
- Tarayıcı bu başlığı görüp içeriği açar ve sayfayı oluşturur. Kullanıcı bu adımların hiçbirini fark etmez.
Kritik bir nokta: sıkıştırma yalnızca metin tabanlı dosyalarda anlamlıdır. HTML, CSS, JavaScript, JSON, XML ve SVG bunların başında gelir. Buna karşılık JPEG, PNG, WebP, MP4 gibi dosyalar zaten kendi içinde sıkıştırılmıştır; onları tekrar sıkıştırmaya çalışmak neredeyse hiç kazanç sağlamaz, hatta sunucuya boşuna işlem yükü bindirir. Bu yüzden doğru yapılandırma, sadece doğru MIME türlerini hedeflemekten geçer.
Gzip Nedir?
Gzip, 1992’den bu yana kullanılan, DEFLATE algoritmasına (LZ77 + Huffman kodlaması) dayanan olgun bir sıkıştırma yöntemidir. Web’in fiili standardı olmuştur çünkü her tarayıcı, her sunucu ve her ara katman onu destekler. HTTP ister düz ister şifreli çalışsın, Gzip her koşulda devrededir.
Gzip’in en güçlü yanı hızıdır. Sıkıştırma seviyeleri 1 ile 9 arasında ayarlanabilir; düşük seviyeler CPU’yu çok az yorar, yüksek seviyeler biraz daha iyi oran verir ama daha fazla işlem gücü ister. Metin tabanlı dosyalarda tipik olarak %60-70 boyut azalması sağlar. Yani 300 KB’lik bir HTML çıktısı yaklaşık 90-100 KB’a iner.
Brotli Nedir ve Neyi Farklı Yapar?
Brotli, Google tarafından geliştirilen ve 2015’ten itibaren yaygınlaşan daha yeni bir algoritmadır. Gzip’ten en önemli farkı, içine gömülü bir sözlüktür: HTML etiketleri, sık kullanılan CSS özellikleri ve JavaScript anahtar kelimeleri gibi web’de milyonlarca kez tekrar eden ifadeleri hazır bir referans tablosundan tanır. Bu sayede aynı dosyayı Gzip’ten daha küçük hale getirir.
Brotli’nin sıkıştırma seviyeleri 0 ile 11 arasındadır. Seviye 11 en yüksek oranı verir ama işlem maliyeti de en yüksektir; bu yüzden anlık (on-the-fly) sıkıştırmada genellikle 4-6 arası bir seviye tercih edilir. Statik dosyaları önceden hazırlayıp saklarken ise seviye 11 mantıklıdır, çünkü sıkıştırma bir kez yapılır, sonra defalarca kullanılır.
Dikkat edilmesi gereken bir kısıtlama var: Brotli yalnızca HTTPS üzerinden çalışır. Tarayıcılar, düz HTTP bağlantılarında Brotli ile sıkıştırılmış yanıtları kabul etmez. Bugün zaten hemen her site HTTPS kullandığından bu pratikte sorun oluşturmaz, ancak SSL sertifikanız yoksa Brotli devreye girmez, sunucu otomatik olarak Gzip’e döner.
Gzip mi, Brotli mi? Yan Yana Karşılaştırma
İki algoritmayı “biri diğerinden iyi” diye özetlemek yanıltıcı olur; her birinin güçlü olduğu senaryo farklıdır. Aşağıdaki tablo, tipik bir metin tabanlı web varlığı için 2026 koşullarında beklenen davranışı özetliyor.
| Ölçüt | Gzip | Brotli |
|---|---|---|
| Tipik boyut azalması (metin) | %60-70 | %70-80 |
| Brotli’ye kıyasla dosya boyutu | Referans | %15-25 daha küçük |
| Sıkıştırma hızı | Çok hızlı | Yüksek seviyede yavaş |
| Açma (decompression) hızı | Hızlı | Gzip’e çok yakın |
| Seviye aralığı | 1-9 | 0-11 |
| HTTP üzerinde çalışma | Evet | Hayır (yalnızca HTTPS) |
| Tarayıcı desteği | Evrensel | %97+ modern tarayıcı |
Buradaki en önemli çıkarım şudur: Brotli metin dosyalarını daha iyi sıkıştırır ama en yüksek seviyelerde sunucuyu daha çok yorar. Açma hızı iki algoritmada da neredeyse aynı olduğundan, kullanıcı tarafında hiçbir yavaşlama yaşanmaz. Bu yüzden ideal kurulum “ya biri ya öteki” değil, her ikisini birlikte tutup tarayıcıya en iyi seçeneği bırakmaktır. Brotli destekleyen tarayıcı Brotli alır, desteklemeyen ya da HTTP’den bağlanan Gzip’e düşer.
LiteSpeed Üzerinde Sıkıştırma
Modern hosting ortamlarının önemli bir kısmı web sunucusu olarak LiteSpeed kullanır ve bu iyi bir haber: LiteSpeed’in Brotli desteği yerleşiktir ve varsayılan olarak akıllıca yapılandırılmıştır. Alastyr’ın paylaşımlı ve VPS altyapısında da LiteSpeed + LSCache kombinasyonu standart olarak sunulur; yani çoğu senaryoda sıkıştırma zaten devrededir.
Kontrol panelinizden LSCache eklentisini kullanıyorsanız, önbellek ayarları içindeki “Optimize” bölümünde HTML, CSS ve JS sıkıştırma seçenekleri hazır durumdadır. Bunları aktif etmek Brotli ve Gzip’i statik/dinamik içerik için ayrı ayrı yönetmenizi sağlar. Statik dosyalar için LiteSpeed önceden sıkıştırılmış sürümleri saklayabildiğinden, her istekte yeniden sıkıştırma maliyeti ortadan kalkar. WordPress hosting planlarında bu optimizasyon, sunucu tarafında ek yapılandırma gerektirmeden çalışır.
Apache Üzerinde Etkinleştirme (.htaccess)
Apache 2.4.26 ve sonrası mod_brotli modülüyle gelir; Gzip için mod_deflate zaten uzun süredir mevcuttur. Paylaşımlı bir hosting hesabında modül düzeyinde ayara erişemeseniz de, site kök dizininizdeki .htaccess dosyasıyla hangi dosya türlerinin sıkıştırılacağını belirleyebilirsiniz.
Örnek bir yapılandırma şöyle görünür:
<IfModule mod_brotli.c>bloğu içindeAddOutputFilterByType BROTLI_COMPRESS text/html text/css text/javascript application/javascript application/json image/svg+xmlsatırıyla Brotli hedeflenir.<IfModule mod_deflate.c>bloğu içinde aynı MIME türleri içinAddOutputFilterByType DEFLATEsatırı Gzip geri dönüşünü sağlar.- Görsel ve video türlerini bilinçli olarak listeye almazsınız; onları sıkıştırmak fayda getirmez.
IfModule koşullu blokları önemlidir: modül sunucuda yoksa yapılandırma sessizce atlanır ve siteniz 500 hatası vermez. Değişiklikten sonra sonucu mutlaka doğrulayın; aşağıda bunun komutunu vereceğiz.
Nginx Üzerinde Etkinleştirme
Nginx’te Gzip yerleşiktir; Brotli ise ayrı modüllerle (ngx_http_brotli_filter_module ve ngx_http_brotli_static_module) yüklenir. Kök yapılandırma dosyasına erişebildiğiniz bir VPS sunucu ya da bulut sunucu ortamında şu prensipleri uygularsınız:
gzip on;ile Gzip’i açar,gzip_typesile hedef MIME türlerini belirtir,gzip_comp_level 5;gibi dengeli bir seviye seçersiniz.brotli on;vebrotli_comp_level 6;ile anlık Brotli sıkıştırmasını,brotli_static on;ile önceden hazırlanmış.brdosyalarının sunulmasını etkinleştirirsiniz.- İki algoritmayı birlikte tanımlarsınız; Nginx, tarayıcının
Accept-Encodingbaşlığına göre otomatik olarak uygun olanı seçer.
Kök erişim gerektiren bu tür yapılandırmalar, tam denetimin sizde olduğu sunucu ortamlarının en belirgin avantajıdır. Yapılandırma dosyasını değiştirdikten sonra Nginx’i yeniden yüklemeyi (nginx -s reload) unutmayın.
Doğru Sıkıştırma Seviyesini Seçmek
Seviye seçimi, çoğu kişinin gözden kaçırdığı ama pratikte en çok fark yaratan ayardır. Mantık, işlem gücü ile kazanç arasında denge kurmaktır:
- Dinamik içerik (her istekte üretilen HTML, API yanıtları) için Brotli seviye 4-6 ya da Gzip seviye 5-6 idealdir. Amaç, sunucuyu yormadan makul bir kazanç sağlamaktır.
- Statik dosyalar (CSS, JS, font, SVG) için derleme aşamasında Brotli seviye 11 ile önceden sıkıştırıp saklamak en verimli yoldur. Sıkıştırma bir kez yapılır, çıktı binlerce kez sunulur; bu yüzden yüksek CPU maliyeti sorun olmaz.
Statik dosyaları seviye 11’de anlık sıkıştırmaya çalışmak yaygın bir hatadır; sunucu her istekte gereksiz yere zorlanır. “Önceden sıkıştır, statik sun” prensibi burada altın kuraldır.
Sıkıştırmanın Çalıştığını Nasıl Doğrularsınız?
Yapılandırmayı tamamladıktan sonra tahmin yürütmeyin, ölçün. En hızlı yöntem komut satırından curl kullanmaktır:
- Gzip testi için:
curl -I -H "Accept-Encoding: gzip" https://alanadiniz.comkomutunu çalıştırın ve yanıttacontent-encoding: gzipsatırını arayın. - Brotli testi için aynı komutu
Accept-Encoding: brile tekrarlayın;content-encoding: brgörüyorsanız Brotli devrededir.
Tarayıcı tarafında ise geliştirici araçlarının Network sekmesinde herhangi bir dosyaya tıklayıp Response Headers içinde aynı başlığı görebilirsiniz. İki taraf da tutarlı sonuç veriyorsa kurulum tamamdır. Bu doğrulama adımını atlamayın; sıkıştırmanın “açık göründüğü” ama aslında MIME türü uyuşmazlığı yüzünden devreye girmediği durumlar oldukça sıktır.
Alastyr Altyapısında Sıkıştırma
Sıkıştırmadan tam verim almanın önkoşulu, altında hızlı ve doğru yapılandırılmış bir sunucu bulunmasıdır. Alastyr’ın İzmir’deki kendi veri merkezinde barındırdığı, tümüyle Türk sermayeli altyapıda web sunucusu olarak LiteSpeed + LSCache standart gelir; bu da Brotli ve Gzip’in kutudan çıkar çıkmaz, doğru MIME hedeflemesiyle çalıştığı anlamına gelir. Intel Xeon Gold işlemciler ve Dell EMC Unity all-flash depolama, yüksek seviyeli sıkıştırmanın getirdiği işlem yükünü rahatça karşılar.
Ücretsiz SSL sertifikası standart olarak sunulduğundan Brotli’nin HTTPS koşulu da kendiliğinden sağlanır. CloudLinux + CageFS izolasyonu, paylaşımlı ortamlarda bile komşu hesapların işlem gücünüzü etkilemesini önler; yani sıkıştırma için ayrılan CPU gerçekten size kalır. PHP sürüm seçici ile uygulamanızı en uygun sürümde çalıştırıp performansı bir adım daha ileri taşıyabilirsiniz. Uygun bir hosting paketi ile başlamak, sıkıştırma dahil pek çok optimizasyonu sizin adınıza hazır hale getirir.
Sıkça Sorulan Sorular
Gzip ve Brotli’yi aynı anda kullanabilir miyim?
Evet ve önerilen yaklaşım tam olarak budur. İkisini birlikte tanımladığınızda sunucu, tarayıcının Accept-Encoding başlığına bakarak en iyi seçeneği otomatik seçer. Brotli destekleyen modern tarayıcılar Brotli, desteklemeyenler ya da HTTP’den bağlananlar Gzip alır. Böylece hem en yüksek sıkıştırmayı hem de tam uyumluluğu elde edersiniz.
Brotli her zaman Gzip’ten daha mı iyidir?
Metin tabanlı dosyalarda genellikle daha iyi sıkıştırır, ortalama %15-25 daha küçük çıktı verir. Ancak en yüksek seviyelerde sıkıştırma sırasında sunucuyu daha çok yorar ve yalnızca HTTPS üzerinden çalışır. Bu yüzden “her zaman daha iyi” demek yerine, doğru senaryoda doğru seviyeyle kullanmak gerekir.
Görselleri de sıkıştırmalı mıyım?
Hayır. JPEG, PNG, WebP, GIF ve video dosyaları zaten kendi içinde sıkıştırılmıştır. Onları Gzip veya Brotli ile tekrar sıkıştırmak neredeyse hiç kazanç sağlamaz, üstüne sunucuya boşuna işlem yükü bindirir. Sıkıştırmayı yalnızca HTML, CSS, JavaScript, JSON, XML ve SVG gibi metin türlerine uygulayın.
Sıkıştırma sitemin içeriğini bozar mı?
Hayır. Hem Gzip hem Brotli kayıpsız (lossless) algoritmalardır. Dosya yolda küçültülür, tarayıcıda birebir orijinaline geri açılır. Kullanıcı ne sıkıştırmayı ne de açma işlemini fark eder; yalnızca sayfanın daha hızlı yüklendiğini görür.
Hangi sıkıştırma seviyesini seçmeliyim?
Dinamik içerik için Brotli seviye 4-6 ya da Gzip seviye 5-6 dengeli bir tercihtir. Statik dosyalar (CSS, JS, font) için derleme aşamasında Brotli seviye 11 ile önceden sıkıştırıp saklamak en verimli yoldur, çünkü işlem bir kez yapılır ve çıktı defalarca kullanılır.
Brotli neden HTTP üzerinde çalışmıyor?
Tarayıcılar güvenlik ve tutarlılık nedeniyle Brotli ile sıkıştırılmış yanıtları yalnızca HTTPS bağlantılarında kabul eder. Sitenizde geçerli bir SSL sertifikası varsa Brotli sorunsuz çalışır. Sertifika yoksa sunucu otomatik olarak Gzip’e döner, dolayısıyla sıkıştırma yine de devrede kalır.
Sıkıştırmanın çalıştığını nasıl anlarım?
En pratik yöntem curl komutudur. curl -I -H "Accept-Encoding: br" https://alanadiniz.com çalıştırıp yanıtta content-encoding satırını kontrol edin; “br” görüyorsanız Brotli, “gzip” görüyorsanız Gzip aktiftir. Alternatif olarak tarayıcının geliştirici araçlarında Network sekmesinden Response Headers’a bakabilirsiniz.
LiteSpeed kullanan hosting’de ayrıca bir şey yapmam gerekir mi?
Genellikle hayır. LiteSpeed’in Brotli ve Gzip desteği yerleşiktir ve çoğu ortamda varsayılan olarak etkindir. LSCache eklentisi kullanıyorsanız optimize bölümündeki HTML/CSS/JS sıkıştırma seçeneklerini aktif etmek yeterlidir. Yine de kurulumu curl ile doğrulamanız iyi olur.
Sıkıştırma SEO’yu etkiler mi?
Dolaylı olarak evet. Sıkıştırma sayfa boyutunu düşürüp yüklenme süresini kısalttığı için Core Web Vitals metriklerini iyileştirir. Sayfa hızı ise Google’ın sıralama sinyalleri arasındadır. Yani sıkıştırma tek başına doğrudan bir SEO faktörü olmasa da, hızlandırdığı site dolaylı olarak arama görünürlüğüne olumlu katkı sağlar.
Sıkıştırma hazır gelen bir altyapı ister misiniz?
Alastyr’ın İzmir’deki kendi veri merkezinde LiteSpeed + LSCache, ücretsiz SSL ve CloudLinux izolasyonu standart gelir. Brotli ve Gzip, siz uğraşmadan doğru yapılandırmayla çalışır.
{
“@context”: “https://schema.org”,
“@type”: “FAQPage”,
“mainEntity”: [
{
“@type”: “Question”,
“name”: “Gzip ve Brotli’yi aynı anda kullanabilir miyim?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Evet ve önerilen yaklaşım tam olarak budur. İkisini birlikte tanımladığınızda sunucu, tarayıcının Accept-Encoding başlığına bakarak en iyi seçeneği otomatik seçer. Brotli destekleyen modern tarayıcılar Brotli, desteklemeyenler ya da HTTP’den bağlananlar Gzip alır. Böylece hem en yüksek sıkıştırmayı hem de tam uyumluluğu elde edersiniz.”
}
},
{
“@type”: “Question”,
“name”: “Brotli her zaman Gzip’ten daha mı iyidir?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Metin tabanlı dosyalarda genellikle daha iyi sıkıştırır, ortalama %15-25 daha küçük çıktı verir. Ancak en yüksek seviyelerde sıkıştırma sırasında sunucuyu daha çok yorar ve yalnızca HTTPS üzerinden çalışır. Bu yüzden her zaman daha iyi demek yerine, doğru senaryoda doğru seviyeyle kullanmak gerekir.”
}
},
{
“@type”: “Question”,
“name”: “Görselleri de sıkıştırmalı mıyım?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Hayır. JPEG, PNG, WebP, GIF ve video dosyaları zaten kendi içinde sıkıştırılmıştır. Onları Gzip veya Brotli ile tekrar sıkıştırmak neredeyse hiç kazanç sağlamaz, üstüne sunucuya boşuna işlem yükü bindirir. Sıkıştırmayı yalnızca HTML, CSS, JavaScript, JSON, XML ve SVG gibi metin türlerine uygulayın.”
}
},
{
“@type”: “Question”,
“name”: “Sıkıştırma sitemin içeriğini bozar mı?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Hayır. Hem Gzip hem Brotli kayıpsız algoritmalardır. Dosya yolda küçültülür, tarayıcıda birebir orijinaline geri açılır. Kullanıcı ne sıkıştırmayı ne de açma işlemini fark eder; yalnızca sayfanın daha hızlı yüklendiğini görür.”
}
},
{
“@type”: “Question”,
“name”: “Hangi sıkıştırma seviyesini seçmeliyim?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Dinamik içerik için Brotli seviye 4-6 ya da Gzip seviye 5-6 dengeli bir tercihtir. Statik dosyalar (CSS, JS, font) için derleme aşamasında Brotli seviye 11 ile önceden sıkıştırıp saklamak en verimli yoldur, çünkü işlem bir kez yapılır ve çıktı defalarca kullanılır.”
}
},
{
“@type”: “Question”,
“name”: “Brotli neden HTTP üzerinde çalışmıyor?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Tarayıcılar güvenlik ve tutarlılık nedeniyle Brotli ile sıkıştırılmış yanıtları yalnızca HTTPS bağlantılarında kabul eder. Sitenizde geçerli bir SSL sertifikası varsa Brotli sorunsuz çalışır. Sertifika yoksa sunucu otomatik olarak Gzip’e döner, dolayısıyla sıkıştırma yine de devrede kalır.”
}
},
{
“@type”: “Question”,
“name”: “Sıkıştırmanın çalıştığını nasıl anlarım?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “En pratik yöntem curl komutudur. curl -I -H “Accept-Encoding: br” https://alanadiniz.com çalıştırıp yanıtta content-encoding satırını kontrol edin; br görüyorsanız Brotli, gzip görüyorsanız Gzip aktiftir. Alternatif olarak tarayıcının geliştirici araçlarında Network sekmesinden Response Headers’a bakabilirsiniz.”
}
},
{
“@type”: “Question”,
“name”: “LiteSpeed kullanan hosting’de ayrıca bir şey yapmam gerekir mi?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Genellikle hayır. LiteSpeed’in Brotli ve Gzip desteği yerleşiktir ve çoğu ortamda varsayılan olarak etkindir. LSCache eklentisi kullanıyorsanız optimize bölümündeki HTML/CSS/JS sıkıştırma seçeneklerini aktif etmek yeterlidir. Yine de kurulumu curl ile doğrulamanız iyi olur.”
}
},
{
“@type”: “Question”,
“name”: “Sıkıştırma SEO’yu etkiler mi?”,
“acceptedAnswer”: {
“@type”: “Answer”,
“text”: “Dolaylı olarak evet. Sıkıştırma sayfa boyutunu düşürüp yüklenme süresini kısalttığı için Core Web Vitals metriklerini iyileştirir. Sayfa hızı ise Google’ın sıralama sinyalleri arasındadır. Yani sıkıştırma tek başına doğrudan bir SEO faktörü olmasa da, hızlandırdığı site dolaylı olarak arama görünürlüğüne olumlu katkı sağlar.”
}
}
]
}





