File berformat .shtml (Server Side Includes) tidak bisa dibuka secara langsung dengan cara mengklik dua kali pada browser jika dibuka secara lokal dari komputer (file://). Format ini memerlukan server web yang aktif, seperti Apache atau Nginx, yang mendukung pemrosesan SSI agar kode di dalamnya dapat dieksekusi sebelum dikirim ke peramban.
Penyebab Utama File SHTML Gagal Dibuka
Kegagalan dalam membuka atau merender file SHTML umumnya disebabkan oleh kesalahan konfigurasi server atau kesalahan dalam mengakses file tersebut. Berikut adalah rincian penyebab teknis di lapangan:
| Penyebab | Keterangan Teknis | Solusi Cepat |
|---|---|---|
| Dibuka Secara Lokal | Browser langsung membaca file dari harddisk tanpa melalui HTTP server, sehingga SSI tidak diproses. | Gunakan local web server seperti XAMPP atau Docker. |
| Konfigurasi Apache Belum Aktif | Modul include_module pada server Apache belum diaktifkan. |
Aktifkan modul SSI pada file httpd.conf. |
| Salah Ekstensi File | File disimpan sebagai .html padahal menggunakan tag SSI <!--#include...>. |
Ubah ekstensi file menjadi .shtml. |
| Aturan Handler Server Hilang | Server web belum diinstruksikan untuk memetakan ekstensi shtml ke handler parsing SSI. | Tambahkan AddHandler server-parsed .shtml pada konfigurasi. |
Langkah Perbaikan pada Web Server Apache
Jika Anda mengelola server sendiri dan file SHTML memunculkan error atau hanya menampilkan teks mentah, lakukan konfigurasi berikut pada server Apache:
- Buka file konfigurasi utama Apache (biasanya
httpd.confatau konfigurasi virtual host). - Pastikan modul include sudah dimuat dengan menghilangkan tanda pagar (#) pada baris berikut:
LoadModule include_module modules/mod_include.so - Tambahkan direktif handler untuk direktori website Anda agar memproses file SHTML:
<Directory "/var/www/html"> Options +Includes AddType text/html .shtml AddOutputFilter INCLUDES .shtml </Directory> - Simpan file konfigurasi dan lakukan restart pada layanan Apache:
sudo systemctl restart apache2
Menjalankan File SHTML di Lingkungan Lokal
Bagi pengembang yang ingin menguji file SHTML di komputer lokal tanpa server produksi, Anda harus menginstal aplikasi server lokal seperti XAMPP atau Laragon. Letakkan direktori proyek Anda ke dalam folder htdocs pada XAMPP, kemudian akses melalui browser menggunakan protokol lokal:
http://localhost/namaproyek/file.shtml
Mengakses dengan cara ini memastikan modul Apache memproses perintah Server Side Includes dengan sempurna sebelum ditampilkan oleh browser.