Mengatasi Error 'Options Includes' di .htaccess

Pesan error terkait Options Includes di dalam file .htaccess umumnya terjadi karena server web Apache dikonfigurasi untuk melarang penggunaan direktif Options di tingkat direktori lokal, atau adanya benturan pengaturan dengan berkas konfigurasi utama server (seperti httpd.conf atau apache2.conf).

Secara default, keamanan tingkat lanjut pada banyak penyedia web hosting menonaktifkan kemampuan pengguna untuk mengubah opsi eksekusi server seperti Server Side Includes (SSI) melalui .htaccess guna mencegah celah eksploitasi. Ketika direktif Options +Includes dipanggil tanpa izin global dari administrator server, Apache akan merespons dengan kode kesalahan internal server (HTTP 500).

Penyebab Utama Error Options Includes

Sebelum menerapkan langkah perbaikan, kenali parameter penyebab umum yang sering memicu kegagalan konfigurasi ini pada modul Apache:

Penyebab Error Deskripsi Teknis Dampak pada Server
AllowOverride None Blok direktori utama server melarang pembacaan berkas .htaccess sepenuhnya. Seluruh perintah di .htaccess diabaikan, memicu HTTP 500.
AllowOverride Options tidak aktif Server hanya mengizinkan modifikasi terbatas (misal: AuthConfig), melarang direktif Options. Penggunaan Options +Includes ditolak oleh sistem.
Konflik Tanda +/- Penulisan parameter tanpa awalan tanda tambah (+) atau minus (-) pada lingkungan tertentu. Apache gagal memparsing status argumen modul.

Langkah Perbaikan Teknis

Berikut adalah beberapa metode perbaikan yang dapat diterapkan langsung untuk memulihkan akses situs web Anda:

1. Modifikasi Baris Options pada .htaccess

Jika Anda tidak memiliki akses root ke server (pengguna shared hosting), cara paling aman adalah menghapus atau memodifikasi baris perintah yang memicu error tersebut.

# Hapus atau ubah baris ini di .htaccess
# Options +Includes

# Atau ganti dengan baris aman jika diizinkan hoster:
Options -Indexes +FollowSymLinks

2. Konfigurasi AllowOverride pada Apache (Akses Root/VPS)

Jika Anda mengelola server sendiri via SSH, Anda perlu memberikan izin kepada Apache agar mengizinkan direktif Options dibaca dari .htaccess.

  1. Buka berkas konfigurasi virtual host atau apache2.conf menggunakan editor teks (nano/vim).
  2. Cari blok direktori untuk direktori web Anda (biasanya /var/www/html).
  3. Ubah parameter AllowOverride menjadi All atau minimal menyertakan Options.
<Directory /var/www/html>
    Options Indexes FollowSymLinks Includes
    AllowOverride All
    Require all granted
</Directory>
  1. Simpan berkas dan lakukan uji sintaks konfigurasi dengan perintah sudo apache2ctl configtest.
  2. Muat ulang layanan Apache menggunakan perintah sudo systemctl restart apache2 atau httpd.

Troubleshooting Lapangan

Jika error masih berlanjut setelah mengubah pengaturan di atas, periksa catatan log error server untuk menemukan detail spesifik dari modul yang mengalami kegagalan:

  • Lokasi Log Ubuntu/Debian: /var/log/apache2/error.log
  • Lokasi Log CentOS/RHEL: /var/log/httpd/error_log

Pastikan juga modul include pada Apache telah aktif dengan menjalankan perintah sudo a2enmod include pada sistem berbasis Debian.