Mengaktifkan kompresi HTTP di Apache
Untuk web server mengoptimalkan penggunaan bandwidth dan resource hosting adalah hal yang mutlak dilakukan karena efek positifnya akan terasa pada pengunjung situsnya. Salah satu tips yang sangat direkomendasikan adalah melakukan kompresi HTTP terhadap konten yang dikirimkan ke browser dan kalau tidak sempat mengaturnya lewat PHP maka bisa diaktifkan lewat file .htaccess di Apache.
Apa yang perlu diisikan dalam file .htaccess
? Ada 2 jenis cara untuk mengaktifkan kompresi koneksi dan keduanya menggunakan algoritma GZIP, yang membedakan adalah kapan dilakukannya dan informasi tambahannya.
Dengan mod_deflate
maka setiap permintaan konten akan dikompres saat itu juga (on-the-fly) dan prosesnya sangat cepat. Sisipkan kode berikut agar Apache memanfaatkan modul Deflate yang sudah standar diikutkan dalam server Apache:
<IfModule mod_deflate.c>
# Kompresi file HTML, CSS, JavaScript, Teks, XML dan font
AddOutputFilterByType DEFLATE text/plain text/html
AddOutputFilterByType DEFLATE text/xml application/xml application/xhtml+xml application/xml-dtd
AddOutputFilterByType DEFLATE application/rdf+xml application/rss+xml application/atom+xml image/svg+xml
AddOutputFilterByType DEFLATE text/css text/javascript application/javascript application/x-javascript
AddOutputFilterByType DEFLATE font/otf font/opentype application/font-otf application/x-font-otf
AddOutputFilterByType DEFLATE font/ttf font/truetype application/font-ttf application/x-font-ttf
# Kompatibilitas dengan bug pada browser versi lama
BrowserMatch ^Mozilla/4 gzip-only-text/html
BrowserMatch ^Mozilla/4\.0[678] no-gzip
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
Header append Vary User-Agent
</IfModule>
Alternatifnya kita bisa memanfaatkan mod_gzip
untuk kompresi kontennya, kelebihannya adalah file – filenya bisa dikompresi sebelum diminta (pre-compressed):
<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 handler ^cgi-script$
mod_gzip_item_include mime ^text/.*
mod_gzip_item_include mime ^application/x-javascript.*
mod_gzip_item_exclude mime ^image/.*
mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.*
</ifModule>
Jangan lupa diuji ya kalau sudah menambahkan kode – kode diatas, bisa lewat cek HTTP header atau layanan online lainnya. Pastikan tampilan website anda tidak rusak juga gara – gara ini.