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.

Tinggalkan komentar