Mod_deflate – Gzip ile Bandwith tasarrufu ve hızlı açılan sayfalar
mod_deflate sayfaları kullanıcıya teslim etmeden sıkıştırıp yollayamaya yarayan bir apache modulüdür.
Mod_deflate standart gzip kodlamalarından daha iyi bir sıkıştırma olanağı sağlar.
Ayrıca Sayfalara kod eklemek yerine .htaccess e tek bir kaç satırlık kod ile html php css js xml gibi dosyaları sıkıştırabilir…
Bu sıkıştırma sizlere birçok avantaj sağlayacaktır. Bunların en önemlileri;
Bantwith(trafik) tasarrufu ve sayfaların daha hızlı açılmasını sağlar. Özellikle düşük bağlantı hızlarına sahip kullanıcılar için çok daha hızlı sayfalar demektir.
Bu sistemi modern tarayıcıların hepsi desteklemektedir.
Eğer sunucunuzda Apache2 yüklü ise; mod_deflate zaten yüklüdür sadece aktif etmek gerekebilir.
Aşağıdaki bilgiler Debian GNU/Linux a göre hazırlanmıştır.
1. a2enmod deflate
2. /etc/init.d/apache2 restart
3. Apache’nin konfigurasyon dosyamıza LoadModule alanına modülü yüklüyoruz.
LoadModule deflate_module /usr/lib/apache2/modules/mod_deflate.so
Artık modül yükleme işlemlerimiz bitmiştir. Şimdi ayarlarımızı yapacağız.
1. İster apache’nin konfigurasyon dosyanıza veya sitelerinizin .htaccess dosyalarına aşağıdaki kodu ekliyoruz.
Bu kod sadece belirtilmiş bazı MIME tiplerine sıkıştırma işlemi verecektir. Örnek olarak;
AddOutputFilterByType DEFLATE text/html text/plain text/xml
kodunu eklememiz Xml, Text ve Html dosyalarını sıkıştıracaktır. Diğer dosya mime tipleri bir boşluk bırakılarak eklenirse eklenilenler de sıkıştırılmış olacaktır.
NOT: mod_deflate resim dosyaları, pdf dosyaları ve zaten sıkıştırılmış olan zip tar.gz bz.. gibi dosyaları sıkıştırmaz. Eklemeyiniz.
2. Aşağıdaki kodu gene aynı şekilde konfigurasyon dosyasına veya htaccess dosyanıza eklediğinizde ise; bütün dosya tipleri sıkıştırılacaktır.
Gene aynı şekilde bu kodda karışıklıkları önlemek maksadıyla resim ve zaten sıkıştırılmış dosyaları dışarıda tutacağız.
Eklememiz gereken kod ise;
SetOutputFilter DEFLATE
SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ \
no-gzip dont-vary
SetEnvIfNoCase Request_URI \
\.(?:exe|t?gz|zip|bz2|sit|rar)$ \
no-gzip dont-vary
SetEnvIfNoCase Request_URI \.pdf$ no-gzip dont-vary
3. 1. ve 2. seçeneği hangisini kullanırsanız kullanın aşağıdaki koduda .htaccess veya konfigurasyon dosyasına eklememiz gerekmektedir. Çünkü bazı eski tarayıcılar mod_deflate desteklememektedir. Bu karışıklığı oluşabilecek problemleri önlemek amacıyla aşağıdaki kodumuzu ekliyoruz.
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
4. Son olarak apache’yi yeniden başlatıyoruz.
/etc/init.d/apache2 restart
SON NOTLAR:
http://httpd.apache.org/docs/2.2/mod/mod_deflate.html
Yukarıdaki adreste apache 2.2.x serisi için mod_deflate bilgileri var gözatabilir, ayrıntılı bilgilere ulaşabilirsiniz.
–
http://www.gidnetwork.com/tools/gzip-test.php
Yukarıdaki adresten de sayfalarınızın sıkıştırılmış olup olmadığını, sayfalarınızın ne kadar sıkıştırıldığın ve üst bilgilerini (header) görebilirsiniz.
—
Bu işlemler Sunucunuzun CPU ve Memory kullanımını artırabilir.
Makale: Murat Esgin (Lavinya.Net Webmaster) webadmin[at]lavinya[dot]net
Etiketler: apache modülü, Apache2, bantwith, CPU, css, debian, gz, gzip, hızlı sayfalar, htaccess, html, httpd, js, kod, Memory, mod, mod_deflate, pdf, php, sıkıştırma, tar, tarfik, text, xml, zip


bugfixed yazdı:
Dostum başka yapabileceğim yok. Normal şartlarda centos işletim sisteminde /etc/httpd/conf/ altındaki dosyaların içinde bu satır:
LoadModule deflate_module modules/mod_deflate.so
Ha başka yerde ise makineyi aldığınız firmaya danışabilirsiniz.
Nisan 5th, 2009 at 22:20
Hakan yazdı:
yok arkadaşım whereis komutu ile arattım..
Nisan 5th, 2009 at 13:34
bugfixed yazdı:
Hmm ayırmış olabilirler, bazı derlemelerde modülleri ayrı bir dosyaya veriyorlar.
/etc/httpd/conf/ bu dizinin altındaki dosyaların içine girerek bir arama yapın diğer işlemler aşağıda anlattığım gibi..
Nisan 5th, 2009 at 11:59
Hakan yazdı:
LoadModule deflate_module modules/mod_deflate.so
conf içinde böyle bir satır yok…. maalesef.
Nisan 4th, 2009 at 22:28
bugfixed yazdı:
Hakan bey normalde centosda aktiftir. Kontrol edin lütfen ssh girişi yapın, pico /etc/httpd/conf/httpd.conf veya nano /etc/httpd/conf/httpd.conf diyerek dosyayı açın.
LoadModule deflate_module modules/mod_deflate.so satırının başında # işareti varsa kaldırın dosyayı kaydedin.
/etc/init.d/httpd restart diyerek apache web sunucusunu yeniden başlatın tamamdır.
Nisan 3rd, 2009 at 21:49
Hakan yazdı:
pardon centos kullanıyorum..
Nisan 3rd, 2009 at 20:42
bugfixed yazdı:
Hakan BEY; makale içinde debian ve türevleri için nasıl olduğunu yazdık aktiflenmesi için. Dağıtımınız hangisi ise belirtirseniz yardımcı olmaya çalışırız.
Nisan 3rd, 2009 at 9:47
Hakan yazdı:
arkadaşlar benim sunucuda mod-deflate yok nasıl kurabilirim.
Nisan 2nd, 2009 at 12:30
bugfixed yazdı:
Selamlar evet gevv arkadaşım malesef doğru. Fakat sunucu özellikleri gitgide arttıkça bu kullanım değeri mod_deflate için azalmakta.
Mart 22nd, 2009 at 21:54
gevv yazdı:
Teşekkürler keşke
“Bu işlemler Sunucunuzun CPU ve Memory kullanımını artırabilir.” bu olay olmasaydı zaten wordpress cpu canavarı
Mart 22nd, 2009 at 13:46
unsecured bad yazdı:
hey
its very point of view.
Good post.
realy good post
thank you
Eylül 3rd, 2008 at 4:47
nuri yazdı:
Gerçekten yararlı ve faydalı makaleler teşekkür ederim..
şuan için gözle görülür farkı hissettim
Nisan 18th, 2008 at 15:50
Apache mod_expires ile sayfaları hızlandırmak | Lavinya.Net Web Günlüğü yazdı:
[...] Daha önceki konu ile alakalı makalemizde belirttiğimiz ve örneklerle açıkladığımız mod_deflate ile; dinamik [...]
Şubat 3rd, 2008 at 15:53
Murat yazdı:
Bence teknolojik bir nimet
Kasım 22nd, 2007 at 17:20
sinan yazdı:
faydalı bir makale. teşekkürler. deneyip sonuçları yazayım
Ekim 2nd, 2007 at 2:28
Ersin yazdı:
Gerçekten farkediliyor.
Eylül 29th, 2007 at 21:10
bugfixed yazdı:
Bütün sayfalarımıza ekledik test edilmiştir. Süper bir olay.
Eylül 29th, 2007 at 21:08