Format Penulisan SSI SHTML: Panduan Teknis dan Implementasi

Sintaks Dasar SSI pada File SHTML

Server Side Includes (SSI) adalah mekanisme sederhana untuk menyertakan konten dinamis ke dalam file HTML statis. File dengan ekstensi .shtml diinstruksikan kepada server web (seperti Apache) untuk diproses oleh modul mod_include sebelum dikirim ke browser pengguna. Format penulisan SSI menggunakan tag komentar HTML khusus agar tidak merusak tampilan jika server tidak mendukungnya.

Sintaks dasar yang digunakan adalah: <!--#directive parameter="value" -->. Pastikan tidak ada spasi antara tanda seru (!) dengan tanda pagar (#).

Daftar Direktif SSI Utama

DirektifFungsiContoh Penggunaan
includeMenyisipkan file lain<!--#include virtual="header.html" -->
echoMenampilkan variabel server<!--#echo var="DATE_LOCAL" -->
execMenjalankan perintah shell<!--#exec cmd="ls -l" -->
configMengatur format output<!--#config timefmt="%Y-%m-%d" -->

Implementasi Teknis

Untuk menggunakan SSI, server harus dikonfigurasi untuk mengizinkan eksekusi Includes. Berikut adalah contoh implementasi untuk menyertakan file header dan menampilkan tanggal terakhir modifikasi file:

<!DOCTYPE html>
<html>
<head>
    <title>Halaman SSI</title>
</head>
<body>
    <!--#include virtual="/includes/header.shtml" -->
    <h1>Selamat Datang</h1>
    <p>Halaman ini diperbarui pada: <!--#flastmod virtual="index.shtml" --></p>
    <!--#include virtual="/includes/footer.shtml" -->
</body>
</html>

Tips Troubleshooting

  • Periksa Konfigurasi Server: Pastikan Options +Includes aktif di file .htaccess atau konfigurasi virtual host Apache Anda.
  • Ekstensi File: Jika server tidak memproses file .html sebagai SSI, Anda harus mengubah ekstensi menjadi .shtml atau menambahkan perintah AddHandler server-parsed .html pada konfigurasi server.
  • Keamanan: Hindari penggunaan direktif exec jika tidak diperlukan, karena dapat menjadi celah keamanan (Remote Code Execution) jika input pengguna tidak disanitasi dengan benar.
  • Pathing: Gunakan virtual untuk path relatif terhadap root dokumen server, dan file untuk path relatif terhadap direktori file saat ini.