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

Makale Oylaması

1 Yıldız Derecelendirme2 Yıldız Derecelendirme3 Yıldız Derecelendirme4 Yıldız Derecelendirme5 Yıldız Derecelendirme (5 oy, Ortalama Derecelendirme: 5 üzerinden 4,80)
Loading ... Loading ...
Etiketler:, , , , , , , , , , , , , , , , , , , , , , , ,
19 Cevap “Mod_deflate – Gzip ile Bandwith tasarrufu ve hızlı açılan sayfalar”
  1. [...] bir önceki benzer yazımızda apache web sunucusunun mod_deflate modülü ile sayfaların hızlandırılıp daha hızlı açılan [...]

  2. bugfixed diyor ki:

    Yıllar sonra yine diyorum alanında en iyisi :) ne cache si ne başkası…

  3. bugfixed diyor ki:

    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.

  4. Hakan diyor ki:

    yok arkadaşım whereis komutu ile arattım..

  5. bugfixed diyor ki:

    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..

  6. Hakan diyor ki:

    LoadModule deflate_module modules/mod_deflate.so

    conf içinde böyle bir satır yok…. maalesef.

  7. bugfixed diyor ki:

    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.

  8. Hakan diyor ki:

    pardon centos kullanıyorum..

  9. bugfixed diyor ki:

    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.

  10. Hakan diyor ki:

    arkadaşlar benim sunucuda mod-deflate yok nasıl kurabilirim.

  11. bugfixed diyor ki:

    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. :)

  12. gevv diyor ki:

    Teşekkürler keşke
    “Bu işlemler Sunucunuzun CPU ve Memory kullanımını artırabilir.” bu olay olmasaydı zaten wordpress cpu canavarı :)

  13. unsecured bad diyor ki:

    hey :)
    its very point of view.
    Good post.
    realy good post

    thank you ;)

  14. nuri diyor ki:

    Gerçekten yararlı ve faydalı makaleler teşekkür ederim..
    şuan için gözle görülür farkı hissettim :)

  15. [...] Daha önceki konu ile alakalı makalemizde belirttiğimiz ve örneklerle açıkladığımız mod_deflate ile; dinamik [...]

  16. Murat diyor ki:

    Bence teknolojik bir nimet :)

  17. sinan diyor ki:

    faydalı bir makale. teşekkürler. deneyip sonuçları yazayım

  18. Ersin diyor ki:

    Gerçekten farkediliyor.

  19. bugfixed diyor ki:

    Bütün sayfalarımıza ekledik test edilmiştir. Süper bir olay. :)

  20.  
Cevap yaz