Gzip Sıkıştırma – Site Performansını Geliştirme
Birisi sitenize girdiğinde, istenen dosyayı almak için sunucunuza bir istek gönderilir. Bu dosyalar ne kadar büyükse, yüklenmesi daha uzun sürer. Web sayfalarınızı ve CSS’nizi tarayıcıya göndermeden önce gzip sıkıştırma ile dosyaları küçülterek sitenin yükleme süresini önemli ölçüde azaltabilirsiniz.
Kısaca, gzip bir metin dosyasında benzer dizeleri bulur ve bu dizeleri geçici olarak değiştirir. Böylece toplam dosya boyutunu küçülür. Özellikle HTML ve CSS dosyalarında çok sayıda tekrarlanan metin ve boşluk kullandığı için gzip sıkıştırma bu kodlarda gerçekten fayda gösterir. Sonuç olarak, gzip sayfa ve CSS boyutunu %60-70 oranında sıkıştırabilir.
Nelere ihtiyacınız olacak?
Bu rehbere başlamadan önce aşağıdakilere ihtiyacınız var:
.htaccess
dosyasına erişim- cPanel erişimi (tercihi)
ÖNEMLİ! Gzip sitenizi hızlandırır, ancak karşılığında daha fazla CPU kullanır. Etkinleştirmeden önce, CPU kullanımınızın istikrarlı olduğundan emin olun.
Adım 1 — Gzip sıkıştırmasını etkinleştirme
Web sitenizde mod_gzip
veya mod_deflate
‘i kullanarak gzip’i etkinleştirebilirsiniz. Mod_deflate
ile yapılan sıkıştırma, daha iyi bir dönüştürme algoritması olması ve modülün kendisi daha yüksek bir apache sürümüyle uyumlu olması nedeniyle önerilir. İki yöntem hakkında daha fazla bilgi Linux Journal makalesinde bulunabilir.
Seçenek 1 — .htaccess dosyasını düzenleyerek
Aşağıdaki kodu .htaccess
dosyanıza ekleyerek, mod_deflate
(önerilen) aracılığıyla gzip sıkıştırmasını etkinleştirebilirsiniz.
<IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript AddOutputFilterByType DEFLATE text/xml AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE image/x-icon AddOutputFilterByType DEFLATE image/svg+xml AddOutputFilterByType DEFLATE application/rss+xml AddOutputFilterByType DEFLATE application/javascript AddOutputFilterByType DEFLATE application/x-javascript AddOutputFilterByType DEFLATE application/xml AddOutputFilterByType DEFLATE application/xhtml+xml AddOutputFilterByType DEFLATE application/x-font AddOutputFilterByType DEFLATE application/x-font-truetype AddOutputFilterByType DEFLATE application/x-font-ttf AddOutputFilterByType DEFLATE application/x-font-otf AddOutputFilterByType DEFLATE application/x-font-opentype AddOutputFilterByType DEFLATE application/vnd.ms-fontobject AddOutputFilterByType DEFLATE font/ttf AddOutputFilterByType DEFLATE font/otf AddOutputFilterByType DEFLATE font/opentype # For Older Browsers Which Can't Handle Compression BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html </IfModule>
Sunucunuz mod_deflate
‘i desteklemiyorsa, mod_gzip
alternatifini deneyebilirsiniz:
<ifModule mod_gzip.c> mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_include mime ^text/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_include handler ^cgi-script$ </ifModule>
Değişiklikleri kaydettiğinizde gzip sıkıştırma etkin olacaktır.
Seçenek 2 — İçerik yönetimi sistemleri eklentileri
WordPress kullanıcıları, GZip Ninja Speed Compression gibi eklentileri yükleyerek gzip sıkıştırmasını etkinleştirebilirler.
Joomla ile yönetici panelinin Sistem > Genel Yapılandırma > Sunucu bölümünden web siteniz için gzip sıkıştırmasını etkinleştirebilirsiniz. Joomla performansı rehberimize de buradan ulaşabilirsiniz.
Seçenek 3 — cPanel aracılığıyla gzip
Bir cPanel lisansınız varsa, Web Sitesi Optimize Et bölümünü kullanarak hosting hesabınız altındaki tüm web siteleri için gzip’i etkinleştirebilirsiniz. Ayrıntılı bir rehber burada bulunabilir.
Seçenek 4 — Windows tabanlı hosting
Bir Windows sunucusu kullanıyorsanız, komut satırını kullanarak statik ve dinamik içerik için HTTP sıkıştırmasını etkinleştirebilirsiniz:
appcmd set config /section:urlCompression /doDynamicCompression:True
appcmd set config /section:urlCompression /doStaticCompression:True
Daha ayrıntılı bilgi için resmi Microsoft rehberini inceleyebilirsiniz.
Adım 2 — Gzip sıkıştırmasını test etmek
Gzip sıkıştırması, WebPageTest veya GTMetrix gibi çeşitli araçlar ile test edilebilir.
Gzip sıkıştırmasını eklemeden ÖNCE:
Gzip sıkıştırmasını ekledikten SONRA:
Sonuç
Bu kısa rehberde .htaccess, CMS eklentileri, cPanel ve Windows sunucusu üzerinden mod_gzip
veya mod_deflate
gzip sıkıştırmasını etkinleştirerek bir web sitesinin performansını nasıl artıracağımızı öğrendik.
Yorum
Haziran 30 2017
Faydalı bilgiler paylaşmışsınız. Sitemdeki işlemleri sayenizde hallettim. Teşekkürler.
Haziran 30 2017
Rehberin size yardımcı olmuş olmasına sevindim. :)
Ağustos 02 2017
İşime yaradı faydalı bir içerik. Emeğinize sağlık teşekkür ederim.
Haziran 13 2018
çok faydalı açıklamalar,denedim ama başarılı olamadım sanırım.
Temmuz 14 2018
son zamanlarda bu eklenti işe yarıyormu hocam?
Mayıs 10 2023
Litespeed cache eklentisi kullanıyorum orada css js falan küçültüyor. Gzip sıkıştırma yapmama gerek var mı yok mu?
Mayıs 14 2023
Merhabalar Ahmet Bey, sitenizi iyi değerlendirmeleri için Müşteri Başarı ekibimizle iletişim kurar mısınız lütfen?