Cara Menambahkan MIME Type SVG di Server Apache

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-Type dari berkas SVG bernilai image/svg+xml.
  • Izin Modul: Pastikan modul mod_mime tidak dinonaktifkan secara tidak sengaja pada berkas konfigurasi utama Apache.