Günümüz internet dünyasında, hem trafik hem de arama motorları açısından, inşa ettiğimiz web sitelerinin kodlarını mümkün olduğunca sıkıştırmak gerekiyor. Google gibi arama motorları da kodları sıkıştırdığımız takdirde, Pagespeed üzerinde web sitelerimize daha yüksek puan veriyor. Ayrıca kodlarımızı ve görsellerimizi ne kadar fazla sıkıştırırsak trafiğimizde o kadar rahatlıyor ve ziyaretçiler de daha az trafik tüketmiş oluyor.
Sıkıştırma işlemleri özellikle Linux Hosting ve WordPress Hosting kullanıcı için önem arz ediyor.
Bu işlemleri genelde mod_gzip dediğimiz modül ile yapmaktayız. Fakat brotli ismi verilen modül sayesinde sıkıştırma işlemlerimizi daha performanslı hale getirebiliriz.
Mod_brotli tıpkı mod_gzip gibi bir sıkıştırma aracıdır. Sıkıştırma işlemi ile; ziyaret edilen web sayfası ziyaretçinin tarayıcısına gönderilmeden önce sayfayı oluşturan tüm istemci taraflı kodlar ve görseller (html, java, css, jpg, png vb.) sunucu tarafından sıkıştırılır ve sonrasında tarayıcıya bu sıkıştırılmış dosya gönderilir. Gzip sıkıştırma işlemi de aynı işleve sahiptir, fakat mod_brotli, mod_gzip’e göre daha iyi sıkıştırma sağlar.
mod_brotli ve mod_gzip arasındaki performans farkları şu şekildedir;
Bu makalemizde, mod_brotli kurulumunu Centos 7 ve Ubuntu sunucu üzerine gerçekleştireceğiz. Daha sonraki yazılarımızda mod_brotli kurulumunu destekleyen paneller üzerine de nasıl kurulumunun yapılacağını anlatacağız.
Ubuntu;
apt-get install brotli
Centos;
yum install cmake -y
wget https://github.com/google/brotli/archive/master.zip
unzip master.zip
cd brotli-master
Daha sonra indirdiğimiz dosyayı derleyelim;
mkdir out && cd out
../configure-cmake
make
make test
make install
Kurulumu doğrulamak için Brotli versiyonu kontrolü yapabiliriz.;
brotli --version
brotli 1.0.4
Yardım için;
brotli --help
Brotli kurulumu tamamsa, apache işlemleri için devel paketini kurmamız gerekiyor;
Ubuntu;
apt-get install apache2-dev
Centos;
yum install httpd-devel
Daha sonra, mod_brotli paketini indirip derlememiz gerekiyor;
git clone --depth=1 --recursive https://github.com/kjdev/apache-mod-brotli.git
cd apache-mod-brotli
./autogen.sh
./configure
make
Ubuntu;
install -D .libs/mod_brotli.so /usr/lib/apache2/modules/mod_brotli.so -m 644
Centos;
cp .libs/mod_brotli.so /usr/lib64/httpd/modules/mod_brotli.so -fv
Ubuntu üzerinde işlemleri yapıyorsanız a2enmod kurulumu gerçekleştirmemiz gerekiyor.
cd /etc/apache2/mods-available
echo "LoadModule brotli_module /usr/lib/apache2/modules/mod_brotli.so" > brotli.load
kurulum işlemleri tamamlandı, mod_brotli yapılandırma işlemlerine geçebiliriz.
Centos;
Favori editörümüz ile brotli.conf dosyasını açalım;
nano /etc/httpd/conf.d/brotli.conf
Ve dosyanın içine aşağıdaki ibareleri yapıştıralım;
<IfModule brotli_module>
BrotliCompressionLevel 10
BrotliWindowSize 22
AddOutputFilterByType BROTLI text/html text/plain text/css text/xml
AddOutputFilterByType BROTLI text/css
AddOutputFilterByType BROTLI application/x-javascript application/javascript
AddOutputFilterByType BROTLI application/rss+xml
AddOutputFilterByType BROTLI application/xml
AddOutputFilterByType BROTLI application/json
</IfModule>
Dosyayı kaydedip çıkalım ve http servisini restart edelim.
systemctl start httpd.service
Ubuntu;
nano brotli.conf
Dosyaya aşağıdakileri kopyalayalım;
<IfModule brotli_module>
BrotliCompressionLevel 10
BrotliWindowSize 22
AddOutputFilterByType BROTLI text/html text/plain text/css text/xml
AddOutputFilterByType BROTLI text/css
AddOutputFilterByType BROTLI application/x-javascript application/javascript
AddOutputFilterByType BROTLI application/rss+xml
AddOutputFilterByType BROTLI application/xml
AddOutputFilterByType BROTLI application/json
</IfModule>
a2enmod’u brotli için aktif edip, servisi yeniden başlatalım;
a2enmod brotli
service apache2 restart
Kurulum işlemleri tamamlandı. https://tools.keycdn.com/brotli-test sayfasından veya header bilginizden mod_brotli’nin çalışıp çalışmadığını kontrol edebilirsiniz.
Brotli compression is supported.
Yapılandırma işlemleri için resmi Apache sayfasından daha fazla detay alabilir ve yapılandırma işlemlerinizi daha fazla detaylandırabilirsiniz.
https://httpd.apache.org/docs/trunk/mod/mod_brotli.html
Linux işletim sistemi, açık kaynak kodlu özgür bir işletim sistemidir. Günümüzde dünya genelinde pek çok…
Cloud ve dedicated sunucu , günümüzde işletmelerin bilişim altyapılarını yönetmek için en çok tercih ettikleri…
En iyi veri yedekleme yöntemleri, bulut hizmetleri, yedekleme yaparken dikkat edilmesi gerekenlere dair her şey.
VDS (Sanal Ayrılmış Sunucu) donanım sanallaştırmasıdır. Ayrılmış sunucu tamamen tek bir kullanıcıya tahsis edilmiş fiziksel…
Plesk üzerinde, panel lisansınız bittiyse veya ssh üzerinde mail işlemleri yapmak isterseniz, aşağıdaki cli komutlarını…
Bilgi teknolojilerinde, sunucular ve network cihazları her zaman en önemli araçlar arasındadır. Özellikle veri merkezleri…