Langkah Mengaktifkan SHTML pada Apache
Untuk mengaktifkan Server Side Includes (SHTML) pada Apache, Anda harus memastikan modul include telah dimuat dan direktori target memiliki izin eksekusi untuk perintah SSI. SHTML memungkinkan penyisipan konten dinamis seperti tanggal, file lain, atau variabel server ke dalam file HTML statis tanpa memerlukan bahasa pemrograman sisi server yang kompleks.
1. Mengaktifkan Modul Include
Pastikan modul mod_include aktif di konfigurasi Apache Anda. Pada sistem berbasis Debian/Ubuntu, gunakan perintah berikut di terminal:
sudo a2enmod include
sudo systemctl restart apache2Pada sistem berbasis RHEL/CentOS, pastikan baris berikut tidak dikomentari di file httpd.conf:
LoadModule include_module modules/mod_include.so2. Konfigurasi Direktori dan .htaccess
Anda perlu memberikan izin kepada Apache untuk memproses SSI. Tambahkan atau ubah konfigurasi pada file .htaccess atau blok <Directory> di file konfigurasi utama Anda:
Options +Includes
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml3. Tabel Ringkasan Konfigurasi
| Parameter | Fungsi |
|---|---|
| Options +Includes | Mengizinkan eksekusi perintah SSI di direktori tersebut. |
| AddType text/html .shtml | Mendefinisikan ekstensi .shtml sebagai file HTML. |
| AddOutputFilter INCLUDES .shtml | Mengaktifkan filter pemrosesan SSI untuk file .shtml. |
4. Pengujian SHTML
Buat file bernama test.shtml di direktori web Anda dan masukkan kode berikut untuk memverifikasi apakah server telah memproses SSI dengan benar:
<!--#echo var="DATE_LOCAL" -->Jika konfigurasi berhasil, saat file diakses melalui browser, teks tersebut akan menampilkan tanggal dan waktu server saat ini.
Troubleshooting Umum
- Izin File: Pastikan file .shtml memiliki izin baca (read) yang benar oleh user web server (biasanya
www-dataatauapache). - Syntax Error: Perintah SSI harus diawali dengan
<!--#dan diakhiri dengan-->. Kesalahan penulisan satu karakter saja akan menyebabkan perintah tidak tereksekusi. - Override: Jika menggunakan
.htaccess, pastikanAllowOverride Alltelah diatur pada blok direktori di konfigurasi utama Apache agar aturan di.htaccessdapat terbaca.