Agar server web Apache mengenali dan menyajikan berkas gambar berformat Scalable Vector Graphics (SVG) dengan benar kepada peramban (browser), Anda harus mendaftarkan MIME type yang tepat, yaitu image/svg+xml. Tanpa konfigurasi ini, beberapa peramban mungkin akan mengunduh berkas SVG alih-alih merendernya secara langsung sebagai gambar, atau server dapat mengembalikan kesalahan tipe konten.
Konfigurasi dapat dilakukan melalui dua metode utama: menyunting berkas konfigurasi utama Apache (seperti httpd.conf atau mime.types) jika Anda memiliki akses administratif penuh (root/sudo), atau menggunakan berkas .htaccess di direktori root situs web untuk penerapan yang lebih instan dan spesifik per direktori.
Metode Konfigurasi MIME Type SVG di Apache
Berikut adalah tabel perbandingan metode penambahan MIME type SVG pada server Apache beserta kelebihan dan tingkat kemudahan penerapannya:
| Metode | Lokasi Berkas | Tingkat Kesulitan | Cakupan |
|---|---|---|---|
| Direktif .htaccess | Root Direktori Web (/public_html/.htaccess) | Sangat Mudah | Spesifik per direktori/website |
| Mod_Mime Konfigurasi Utama | /etc/httpd/conf/httpd.conf atau /etc/apache2/mods-enabled/ | Menengah (Butuh Akses Root) | Global satu server |
| Berkas mime.types | /etc/mime.types | Mudah | Global sistem operasi |
1. Menggunakan Berkas .htaccess
Cara paling cepat dan umum digunakan oleh pengembang web (terutama pada layanan shared hosting) adalah menambahkan direktif AddType ke dalam berkas .htaccess yang terletak di direktori utama situs Anda.
# Tambahkan MIME Type untuk berkas SVG dan SVGZ
AddType image/svg+xml svg svgz
Pastikan modul mod_mime aktif pada server Apache Anda agar direktif di atas dapat diproses dengan baik oleh server.
2. Menggunakan Konfigurasi Global Apache (httpd.conf)
Jika Anda mengelola peladen Virtual Private Server (VPS) sendiri, Anda dapat menambahkan pemetaan MIME type secara langsung ke dalam berkas konfigurasi Apache utama atau di dalam blok VirtualHost.
<IfModule mod_mime.c>
AddType image/svg+xml svg svgz
</IfModule>
Setelah menambahkan baris kode tersebut, simpan berkas konfigurasi, lalu lakukan pengujian sintaks dan muat ulang (restart/reload) layanan Apache Anda:
# Uji sintaks konfigurasi Apache
sudo apachectl configtest
# Muat ulang layanan Apache (Ubuntu/Debian)
sudo systemctl reload apache2
# Muat ulang layanan Apache (CentOS/RHEL)
sudo systemctl reload httpd
Mengaktifkan Kompresi SVGZ (Opsional)
Berkas SVG sering kali berukuran cukup besar jika memiliki banyak titik vektor kompleks. Anda dapat mengaktifkan kompresi dan mendefinisikan tipe konten untuk berkas terkompresi (.svgz) agar peladen mengirimkannya dalam format gzip secara efisien.
AddType image/svg+xml svg svgz
AddEncoding gzip svgz
Troubleshooting & Verifikasi Lapangan
Jika setelah konfigurasi gambar SVG masih gagal dimuat atau diunduh sebagai teks mentah (XML), lakukan pemeriksaan berikut:
- Cache Peramban: Bersihkan cache peramban atau gunakan mode penyamaran (Incognito) saat menguji ulang tautan SVG.
- Header Respons: Gunakan alat pengembang (Developer Tools -> Network tab) pada peramban untuk memastikan header
Content-Typedari berkas SVG bernilaiimage/svg+xml. - Izin Modul: Pastikan modul
mod_mimetidak dinonaktifkan secara tidak sengaja pada berkas konfigurasi utama Apache.