Tasarladığınız web sitenizin boyutu yüksek olabilir ve bundan dolayı web siteniz geç açılıyor olabilir. Bu gibi durumlarda Gzip sıkıştırma oldukça işe yaramaktadır. “Gzip sıkıştırma nedir? Nasıl yapılır?” soruları arama motorlarında araştırıldığında kafa karıştırıcı sonuçlar çıkabilmektedir. Yazımda bu soruların cevaplarını kolay anlaşılır ve detaylı bir şekilde anlatmaya çalışacağım.
Gzip sıkıştırma, web sitesinin hızını etkiler ve dolayısı ile bu arama motorlarının da dikkat ettiği bir durumdur. Gzip sıkıştırma yapılan bir web sitesinin hızı artmaktadır. SEO uzmanlarının yaptığı hız testleri, gzip sıkıştırması etkinleştirilmediği takdirde hata verebilmektedir. Bu nedenle, gzip sıkıştırma tüm siteler için zorunlu bir ihtiyaç haline gelmiştir. Gzip sıkıştırmasının etkin olup olmadığı test araçları ile kontrol edilebilmektedir.
Gzip Sıkıştırma Tanımı
Gzip sıkıştırma tanım olarak; web sayfalarının ziyaretçi tarayıcısına gönderilmeden evvel web sunucusunda boyutlarının küçültülmesi işlemidir. Bu işlemin avantajları arasında;
- Bant genişliğinde tasarruf edilmesi
- Sayfaların görüntülenmesinin ve yüklenmesinin daha hızlı olması vardır.
Ziyaretçi web tarayıcısı sayfaları otomatik açarken bu süre zarfında açma ve sıkıştırma işlemi saniyenin sadece küçük bir bölümünde gerçekleşir.
Gzip Sıkıştırma Kullanmanın Amacı Nedir?
Gzip sıkıştırmanın temel amacı, dosyanın küçültülerek siteye yüklenme süresinin kısaltılmasına yardımcı olmaktır. Ziyaretçinin web sitesine girişi ile birlikte istenen dosyanın alınabilmesi için sunucuya istek gider. İstenen dosyanın boyutu ne kadar büyük ise, dosyanın yüklenmesi de o kadar uzun sürer. Bu sürenin azalması için ise web sayfalarının ve CSS’in tarayıcıya gönderilmeden önce gzip sıkıştırmasının yapılması gerekir. Gzip sıkıştırma işlemi ile web sayfasının yüklenme hızı arttığında, bu durum SEO bakımında da avantaj sağlamaktadır. WordPress sitelerde Gzip sıkıştırması işleminin yapılması ise bir zorunluluk halindedir.
İnsanların bir dosya gönderiminde bu dosyayı sıkıştırmayı tercih ettikleri gibi, gzip sıkıştırması da aynı nedenle kullanılmaktadır. İki işlem arasındaki temel fark; gzip sıkıştırma yapıldığında sunucu ve tarayıcı arasındaki aktarımın otomatik gerçekleşiyor olmasıdır.
Gzip Desteği Veren Tarayıcılar
Gzip tarayıcı desteği konusunda web sitesi sahiplerinin herhangi bir endişe duymasına gerek yoktur. Gzip sıkıştırmasını destekleyen tarayıcılar ve başlama tarihleri şunlardır:
- Internet Explorer 5.5+ – 2000 Temmuz ayından bu yana gzip desteği vermektedir.
- Opera 5+ – 2000 Haziran ayından bu yana gzip desteği vermektedir.
- Firefox 0.9.5+ – 2001 Ekim ayından bu yana gzip desteği bulunmaktadır.
- Chrome – piyasaya sürüldüğü 2008 yılından bu yana gzip desteği sağlamaktadır.
- Safari – 2003 yılındaki ilk lansmanından beri gzip desteği veren tarayıcılar arasındadır.
Ortalama 17 yıldır tarayıcıların büyük bir kısmı bu işlemi desteklemektedir.
Gzip Sıkıştırma İşlemi Nasıl Yapılır?
Gzip sıkıştırma işleminin mantığı kısaca; bir metin dosyasında yer alan benzer dizelerin bulunmasını sağlamaktır. Bu benzer dizeler, geçici olarak değiştirilir ve böylece toplam dosya boyutunda küçülme elde edilir. Özellikle CSS ve HTML dosyalarında tekrarlanan boşluk ve metin sayısı diğer dosya türlerine göre oldukça fazladır. Bu nedenle, bu dosyalar için gzip sıkıştırma yapmak daha fazla fayda sağlamaktadır.
CSS ve sayfa boyutunun %60 ile %70 arasında sıkıştırılabilmesi, gzip ile mümkün olabilmektedir. Bu işlem ile site daha hızlı olsa da kullanılan CPU daha fazla olmaktadır. Bu nedenle web sitesi sahiplerinin gzip sıkıştırmasını etkinleştirme öncesinde CPU kullanımlarının istikrarlı olup olmadığını kontrol etmeleri gerekir.
Gzip Sıkıştırmasını Etkinleştirme
Gzip sıkıştırmasını etkinleştirme için mod_deflate ya da mod_gzip kullanılabilmektedir. Bu iki yöntem arasında, mod_deflate daha çok önerilmektedir. Mod_deflate ile yapılan sıkıştırma daha iyi bir dönüştürme algoritmasına sahiptir. Ayrıca, daha yüksek bir apache sürümü ile uyumlu olduğundan daha çok tercih edilmektedir.
Gzip Sıkıştırma Etkinleştirme Yöntemleri
Gzip sıkıştırma etkinleştirme işlemi için kullanabileceğiniz seçenekler şunlardır:
- .htaccess dosyasını düzenleyerek
- İçerik yönetimi sistemleri eklentilerini yükleyerek
- cPanel kullanarak
- Windows tabanlı hosting ile
Bu yöntemlerden herhangi biri ile gzip sıkıştırmasını etkinleştirmek mümkündür.
.htaccess Dosyasını Değiştirerek Gzip Sıkıştırmasını Etkinleştirme
Bu yöntem için .htaccess dosyasına kod eklenmesi gerekir. Dosyaya eklediğinin kodlar sayesinde sitenizin daha hızlı açılmasını sağlayabilirsiniz. Dosyaya ekleyebileceğiniz kod örneği aşağıdaki gibidir:
<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>
Eğer yukarıdaki kod ile işlemi yapamadıysanız, sitenizin sunucusu mod_deflate’yi desteklemiyor demektir. Bunun yerine mod_gzip kodu deneyebilirsiniz. Aşağıda kod örneğini bulabilirsiniz:
<ifModule mod_gzip.c>mod_gzip_on Yesmod_gzip_dechunk Yesmod_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>
Bu dosyaların düzenlenmesi sırasında dikkatli olmanız gerekmektedir. Yukarıdaki kodları doğru şekilde uygulamanız halinde siteniz optimize edilmiş olacaktır.
İçerik Yönetimi Sistemleri Eklentileri ile Gzip Sıkıştırma Etkinleştirme
Bu yöntemi uygulamak için içerik yönetimi sistem eklentilerini yüklemekle başlamalısınız. Sonrasında yönetici paneline giriş yapın. Sırası ile Sistem, Genel Yapılandırma ve Sunucu kısımlarına giriş yapın. Son olarak web siteniz için gzip sıkıştırmasını etkinleştirebilirsiniz.
cPanel Kullanarak Gzip Sıkıştırma Etkinleştirme
Bu yöntem için web sitesi sahibinin cPanle lisansına sahip olması gerekir. Kullanıcı adı ve şifreniz ile hosting paneline girmeniz gerekmektedir. Sonrasında “Yazılım/ Servisler” başlığında altındaki “Web sitesi optimize et” kısmına girin. Hosting hesabınızın alt kısmında bulunan gzip etkinleştirme bölümünden işlemi tamamlayabilirsiniz. Sırası ile önce “Tüm içeriği sıkıştır” ardından “Ayarları Güncelle” butonlarına tıklamanız gerekmektedir.
Windows Tabanlı Hosting ile Gzip Sıkıştırma Etkinleştirme
Windows sunucusu kullanan kişilerin bunun için komut satırını kullanmaları gerekmektedir. Dinamik ve statik içerik için http sıkıştırmasını şu kodlar ile etkinleştirebilirler:
- Dinamik İçerik: appcmd set config /section:urlCompression /doDynamicCompression:True
- Statik İçerik: appcmd set config /section:urlCompression /doStaticCompression:True
Statik içerikler en basit ve verimli içerikler olurken; dinamik içerikler, güncellenebilen, içinde video ve animasyonlar da yer alan içerik yapısıdır.
Gzip Sıkıştırması Nasıl Test Edilir?
Bunun için kullanılabilecek bazı araçlar bulunmaktadır. Bu araçlar kullanıldığında, gzip sıkıştırması gerçekleşmeden önce sıkıştırılabilecek satırlar listelenir. Test araçları, gzip sıkıştırması etkinleştirildikten sonra kullanılırsa, başka sıkıştırma işlemi yapılamayacağına dair bilgilendirme yazısı gelir.
Gzip Sıkıştırması Kontrol Edici Araçlar
Gzip sıkıştırma test araçlarından bazıları şunlardır:
- GTMetrix: Test etmek istediğiniz sitenin URL’sini ilgili alana girdikten sonra “Test your site” butonuna basın. Sitenin neden yavaş olduğu, site performansı ve gzip sıkıştırması ile ilgili detaylar test sonucunda görülecektir. Detaylı sonuçlara https://gtmetrix.com adresi üzerinden ulaşabilirsiniz.
- Website Planet: Web sitesinin gzip sıkıştırmasının etkinleştirilme kontrolü https://www.websiteplanet.com adresi üzerinden yapılabilir. Kullanımının hızlı ve kolay olması ile birlikte, site sahiplerine detaylı sonuçlar da verilmektedir. Kontrol etmek istediğiniz sitenin linkini ilgili adrese yazdıktan sonra “Kontrol Et” butonuna tıklamanız yeterlidir.
- WebPageTest: test aracın açıldıktan sonra kontrol edilecek sitenin linkini yazın. Ardından test edilecek tarayıcı ve cihaz seçimini yapın. Gzip sıkıştırması yapılan sitenin performansı ile ilgili detaylar site sahibine sağlanmaktadır. https://www.webpagetest.org adresi üzerinden ulaşabilirsiniz.
- GiftOfSpeed: Gzip sıkıştırma testi yapmak istediğiniz sitenin linkini, https://www.giftofspeed.com adresinde açılan sayfadaki kutucuğa yazın. “Check” butonuna tıklayarak gzip sıkıştırmasının etkin olup olmadığını kontrol edebilirsiniz.
Bu araçları kullanarak sitenizin hızı hakkında bilgi edinebilirsiniz. Ayrıca sitenizi nasıl optimize edebileceğinize dair öneriler alabilirsiniz. Böyle buradaki sonuçlara göre sitenizi optimize ederek, arama motorları sonuçlarında sitenizi aratıp sitenizin açılma süresini de test edebilirsiniz.