Untuk melakukan include virtual file atau direktori eksternal ke dalam konfigurasi Apache di XAMPP, Anda harus menyunting file httpd.conf dan httpd-vhosts.conf secara manual, serta menyesuaikan hak akses direktori pada sistem operasi Windows.
Kendala utama yang sering dihadapi pengembang saat menggunakan XAMPP adalah error 403 Forbidden atau direktori luar folder htdocs tidak terbaca oleh modul Apache. Hal ini terjadi karena batasan akses keamanan Require all granted yang belum didefinisikan secara spesifik pada blok direktori target.
Langkah Teknis Konfigurasi Virtual File dan Directory
Ikuti tahapan presisi berikut untuk menyertakan folder di luar direktori C:\xampp\htdocs ke dalam server lokal Apache:
1. Modifikasi File httpd.conf
Buka Control Panel XAMPP, klik tombol Config di baris Apache, lalu pilih httpd.conf. Cari baris modul yang diperlukan (pastikan modul mod_alias dan mod_vhost_alias aktif tanpa tanda pagar # di depannya).
2. Tambahkan Blok Direktori Eksternal
Tambahkan baris izin akses direktori pada bagian akhir file httpd.conf atau pada file konfigurasi virtual host:
<Directory "D:/ProyekKu/public">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
3. Konfigurasi Virtual Host (httpd-vhosts.conf)
Buka file C:\xampp\apache\conf\extra\httpd-vhosts.conf dan definisikan server virtual baru agar file atau folder dapat diakses melalui domain lokal (misal: http://proyekku.test).
<VirtualHost *:80>
ServerName proyekku.test
DocumentRoot "D:/ProyekKu/public"
<Directory "D:/ProyekKu/public">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
4. Pengaturan Hosts Windows
Buka Notepad sebagai Administrator, lalu sunting file C:\Windows\System32\drivers\etc\hosts. Tambahkan mapping IP localhost ke domain lokal Anda:
127.0.0.1 proyekku.test
Tabel Parameter Konfigurasi Apache XAMPP
| Direktif Konfigurasi | Fungsi Utama | Contoh Penerapan |
|---|---|---|
| DocumentRoot | Menentukan jalur fisik folder utama web di komputer. | "D:/Web/Project/public" |
| ServerName | Menentukan nama domain lokal untuk akses browser. | mysite.local |
| Require all granted | Memberikan izin akses penuh kepada siapapun ke direktori tersebut. | Wajib ada untuk mencegah error 403. |
| AllowOverride | Mengizinkan pembacaan aturan tambahan dari file .htaccess. | AllowOverride All |
Troubleshooting Kendala Umum
Jika setelah melakukan konfigurasi di atas Apache gagal melakukan restart atau memunculkan pesan error pada log (apache_error.log), periksa beberapa hal berikut:
- Syntax Error: Jalankan perintah
httpd -tmelalui Command Prompt di dalam folderC:\xampp\apache\binuntuk mendeteksi baris kode yang salah ketik. - Port Konflik: Pastikan port 80 tidak sedang digunakan oleh aplikasi lain seperti IIS, Skype, atau World Wide Web Publishing Service Windows.
- Slash Pemisah Folder: Gunakan garis miring biasa (
/) atau garis miring ganda (\\) pada sistem Windows di dalam file konfigurasi Apache untuk menghindari escape character yang keliru.