Gzip Sıkıştırma İle Site Hızlandırma
İçindekiler
Kısaca, Gzip nedir? Diye soracak olur isek: Gzip arkaplanda çalışmakta olan benzer yapıdaki kodları, metin yazılarını, medyaları bularak geçici olarak değiştirip sunar. Böylelikle toplamda sunulmakta olan dosya boyutlarınızda olabildiğince düşer. HTML, CSS gibi dosyalarınızda fazla sayıda tekrarlanan metinler ve boş kodlar bulunmaktadır, gzip ile bu tekrarlanmaların temizlenmesini sağlayarak, sayfa boyutlarında %65-70’lere kadar küçültmeler yapabilirsiniz.
Gzip Sıkıştırma Yapmak İçin Ne Gereklidir?
Blogger siteler için sadece tema düzenleme bölümüne ufak bir kod ile yapılır iken, Wordpress vb. tasarımlarda işler biraz daha farklıdır. Htaccess dosyasına erişim blogger (blogspot) sitelerde bulunmaz iken çoğu kullanıcı farkında olmadan ufak bir kod ile bunu yapabilmektedir aslında. Diğer tasarımlarda ise Htaccess dosyasına erişiminiz olmalı ve ya tercihe bağlı olarak cPanel erişimi ile panelinizden de yapabilirsiniz.Wordpress Gzip Sıkıştırma
Wordpress'te mod_gzip veya mod_deflate‘i aracılığı ile gzip etkinleştirmesi yapabilirsiniz. Deflate daha yüksek sürüm apacer destekli olmasından dolayı önerebilirim ama bu iki mod hakkında bilgiyi linux panelinizinden edinebilirsiniz.Wordpress Eklenti İle Gzip Sıkıştırma
Wordpress siteniz için hosting panelinizden mod_gzip ve ya mod_deflate sıkıştırmasını etkinleştirdikten sonra, iki çeşit yapılabilmektedir. Bunlardan birisi manuel olarak diğer ise eklenti aracılığı ile. Wordpress gzip sıkıştırmasını eklenti ile yapmak için Wordpress Hızlandırma Eklentisi İle Site Optimizasyonu makalemden faydalanabilirsiniz.Wordpress Manuel Htaccess İle Sıkıştırma Yapma
.htaccess dosyasına hostingten erişim sağladıktan sonra aşağıdaki kodu .htaccess dosyanıza ekleyerek gzip sıkıştırmasını etkinleştirebilirsiniz.mod_deflate kodları:
<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 sunucunuz mod_deflate‘i desteklemiyorsa, mod_gzip
alternatifini deneyebilirsiniz:mod_gzip kodları:
<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>
Kodları ekleyip kaydettikten sonra gzip sıkıştırması
etkin olacaktır.Blogger Gzip Sıkıştırma
Blogger yani Blogspot siteler için ise htaccess dosyasına erişim olmadığı söylenebilir ama bu geçerli bir durum değildir. Hostinge ulaşamayacağınız sizin gzip sıkıştırma yapamayacağınız anlamına gelmez. Blogger sitelerde zaten gzip sıkıştırma yapma sunucu gereği açıktır. Yapmanız gereken sadece bir script kodundan faydalanmak. Aşağıda bulunan kodları sitenizde </body> kodunun hemen üzerine eklemeniz yeterli olacaktır.Blogger için gzip sıkıştırma kodu:
<script type='text/javascript'> //<![CDATA[ $(document).ready(function() { $('img').each(function(){ var $img = $(this); var filename = $img.attr('src') $img.attr('alt', filename.substring((filename.lastIndexOf('/'))+1, filename.lastIndexOf('.'))); }); }); //]]> </script> <script type='text/javascript'> //<![CDATA[ $(document).ready(function() { $('img').each(function(){ var $img = $(this); var filename = $img.attr('src') $img.attr('title', filename.substring((filename.lastIndexOf('/'))+1, filename.lastIndexOf('.'))); }); }); //]]> </script> <script type='text/javascript'> //<![CDATA[ var scrollTimer = null; $(window).scroll(function() { var viewportHeight = $(this).height(), scrollbarHeight = viewportHeight / $(document).height() * viewportHeight, progress = $(this).scrollTop() / ($(document).height() - viewportHeight), distance = progress * (viewportHeight - scrollbarHeight) + scrollbarHeight / 2 - $('#scroll').height() / 2; $('#scroll') .css('top', distance) .text(' (' + Math.round(progress * 100) + '%)') .fadeIn(100); if (scrollTimer !== null) { clearTimeout(scrollTimer); } scrollTimer = setTimeout(function() { $('#scroll').fadeOut(); }, 1500); }); //]]> </script>
Blogger için gzip sıkıştırma yöntemi 2:Aşağıda bulunan kodları <!DOCTYPE html> etiketinin hemen üstüne ekleyip temanızı kaydedin.
<?php if (substr_ count($_SERVER['HTTP_ACCEPT_ENCODING'],'gzip')) ob_start("ob_gzhandler");else ob_ start();?>
Hiç yorum yok: