Document Root pada server web Apache adalah direktori utama tempat file-file situs web Anda disimpan dan dilayani kepada pengunjung. Pengaturan Document Root yang tepat sangat krusial, terutama ketika Anda mengelola beberapa situs web dalam satu server melalui konfigurasi virtual host, seperti saat melakukan deployment aplikasi web modern termasuk framework Laravel pada sistem operasi berbasis Linux seperti Ubuntu dan Debian.
Dalam praktiknya, pengaturan Document Root didefinisikan di dalam file konfigurasi virtual host Apache. Direktif ini mengarahkan server ke folder spesifik, misalnya /var/www/html/ atau direktori publik dari sebuah proyek aplikasi seperti /var/www/html/public/ agar file sistem yang sensitif tidak dapat diakses secara langsung oleh publik.
Langkah Konfigurasi Document Root Apache
Untuk mengubah atau menetapkan Document Root pada konfigurasi Apache, Anda perlu mengakses file konfigurasi virtual host yang biasanya terletak di direktori /etc/apache2/sites-available/. Berikut adalah contoh blok konfigurasi virtual host standar yang mendefinisikan Document Root:
<VirtualHost *:80>
ServerName contoh-domain.com
DocumentRoot /var/www/html/public
<Directory /var/www/html/public>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Tahapan Penerapan
- Buka terminal server Anda dan akses direktori konfigurasi virtual host Apache.
- Buat atau edit file konfigurasi situs (misalnya
000-default.confatau file domain khusus). - Ubah nilai pada baris
DocumentRootsesuai dengan jalur absolut direktori proyek Anda. - Pastikan blok
<Directory>memiliki izin akses yang sesuai (Require all granted) agar Apache diizinkan membaca file di dalam direktori tersebut. - Simpan file konfigurasi, lalu jalankan perintah pengujian sintaks dengan
sudo apache2ctl configtest. - Muat ulang layanan Apache menggunakan perintah
sudo systemctl reload apache2agar perubahan diterapkan.
Tabel Parameter Konfigurasi Virtual Host
| Parameter | Fungsi Utama | Contoh Nilai |
|---|---|---|
| VirtualHost | Menentukan IP dan port yang mendengarkan permintaan masuk. | *:80 atau *:443 |
| ServerName | Menentukan nama domain utama untuk virtual host tersebut. | domainanda.com |
| DocumentRoot | Menentukan jalur direktori fisik file web yang diakses publik. | /var/www/html/public |
| Directory | Mengatur kontrol akses dan hak istimewa pada direktori tertentu. | /var/www/html/public |
Troubleshooting Masalah Document Root
Kesalahan umum yang sering terjadi saat mengatur Document Root adalah munculnya pesan galat "Forbidden" (403 Forbidden) atau halaman default Apache alih-alih situs web Anda. Hal ini biasanya disebabkan oleh:
- Izin Direktori (Permission): Pengguna web server (biasanya
www-data) tidak memiliki izin baca pada folder tujuan. Pastikan kepemilikan folder diatur dengan benar menggunakan perintahchown. - Modul Rewrite Non-Aktif: Untuk aplikasi modern yang menggunakan routing berbasis URL bersih (seperti Laravel), modul
rewriteApache harus diaktifkan melalui perintahsudo a2enmod rewrite. - Kesalahan Jalur (Path): Jalur direktori pada
DocumentRootharus menggunakan jalur absolut (dimulai dari akar sistem/), bukan jalur relatif.