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/current/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.
—
https://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