Cara Mengaktifkan SHTML Include Melalui Htaccess di Apache

Mengaktifkan Server Side Includes (SSI) untuk file dengan ekstensi .shtml melalui file konfigurasi .htaccess memungkinkan Anda menyisipkan dokumen modular seperti header, footer, atau navigasi ke dalam berbagai halaman web tanpa harus melakukan pengkodean berulang. Langkah utama untuk mengeksekusi fungsi ini adalah dengan mendefinisikan ulang pengendali handler dan filter eksekusi Apache melalui direktif khusus di dalam direktori root server web Anda.

Untuk menjalankan perintah SSI secara optimal, pastikan modul mod_include di server Apache hosting Anda telah aktif oleh penyedia layanan. Tanpa modul ini, perintah shtml include tidak akan diproses oleh server, yang sering kali berujung pada galat internal server 500 atau teks kode SSI yang tampil mentah begitu saja di peramban web pengguna.

Langkah Teknis Konfigurasi Htaccess untuk Shtml

Buka atau buat file bernama .htaccess di direktori utama (root) situs web Anda menggunakan teks editor berbasis kode seperti VS Code atau melalui pengelola berkas di cPanel. Tambahkan baris kode presisi untuk menginstruksikan Apache agar mengenali ekstensi file .shtml, .html, atau .htm sebagai dokumen yang harus diproses oleh handler server-side includes.

Berikut adalah tabel parameter konfigurasi yang wajib dimasukkan ke dalam file .htaccess beserta fungsi spesifik dari masing-masing direktif perintah Apache:

Direktif HtaccessFungsi UtamaKeterangan Penerapan
AddType text/html .shtmlMenetapkan tipe MIME untuk file shtml.Memastikan browser membaca file sebagai dokumen HTML standar.
AddHandler server-parsed .shtmlMengaktifkan parser SSI pada file berformat shtml.Memerintahkan Apache memindai tag khusus seperti <!--#include-->.
Options +IncludesMemberikan izin eksekusi SSI di direktori tersebut.Wajib diaktifkan agar modul mod_include diizinkan berjalan.
AddOutputFilter INCLUDES .htmlMemungkinkan file html biasa memuat SSI.Opsional, digunakan jika Anda ingin menyisipkan kode SSI di file .html biasa.

Salin blok kode lengkap di bawah ini dan tempelkan langsung ke bagian paling atas atau paling bawah file .htaccess Anda:

AddType text/html .shtml
AddHandler server-parsed .shtml
Options +Includes
AddOutputFilter INCLUDES .shtml

Contoh Penggunaan Tag Shtml Include pada Dokumen

Setelah konfigurasi .htaccess berhasil disimpan dan diunggah ke server, Anda dapat mulai membuat file modular terpisah, misalnya file bernama header.html atau footer.html yang diletakkan di dalam folder yang sama. File-file bagian kecil ini akan dipanggil secara dinamis oleh halaman utama yang menggunakan ekstensi .shtml.

Untuk memanggil file bagian tersebut, gunakan sintaks tag komentar HTML khusus SSI di dalam dokumen index.shtml Anda:

<!--#include virtual="header.html" -->
<h1>Selamat Datang di Website Utama Kami</h1>
<p>Konten utama halaman web dimuat di sini.</p>
<!--#include virtual="footer.html" -->

Atribut virtual merujuk pada jalur relatif terhadap root dokumen server web Anda, sedangkan atribut file dapat digunakan jika Anda ingin memanggil file berdasarkan direktori relatif lokal dari file yang sedang aktif mengeksekusi perintah tersebut.

Troubleshooting Masalah Umum Shtml Include

Kendala paling sering terjadi saat menerapkan konfigurasi ini adalah munculnya galat 500 Internal Server Error sesaat setelah kode dimasukkan ke dalam file .htaccess. Hal ini biasanya disebabkan oleh kebijakan keamanan server (seperti suEXEC atau batasan konfigurasi global Apache) yang melarang penggunaan direktif Options +Includes di tingkat direktori lokal melalui file .htaccess.

Jika kendala tersebut terjadi, Anda harus menghapus baris Options +Includes dan meminta administrator server atau dukungan teknis hosting Anda untuk mengaktifkan izin tersebut di tingkat file konfigurasi utama server (httpd.conf atau berkas konfigurasi virtual host). Selain itu, pastikan tidak ada kesalahan pengetikan (typo) pada nama file yang dipanggil di dalam atribut tag #include agar tidak memunculkan pesan peringatan file tidak ditemukan di halaman web.