Cara Konfigurasi Apache DocumentRoot pada Linux & Windows

Mengubah Apache DocumentRoot adalah langkah esensial untuk memindahkan direktori utama penyimpanan file website (seperti HTML, PHP, dan aset gambar) dari folder bawaan instalasi server ke direktori kustom pilihan Anda. Pada server berbasis Linux (Ubuntu/Debian), konfigurasi ini umumnya diatur melalui file virtual host yang terletak di direktori /etc/apache2/sites-available/000-default.conf, sedangkan pada lingkungan lokal Windows dengan XAMPP, pengaturan dilakukan melalui file httpd.conf.

Kesalahan umum yang sering terjadi saat mengubah DocumentRoot adalah kelupaan memperbarui blok direktori <Directory> yang memberikan izin akses, sehingga memicu error 403 Forbidden. Berikut adalah tabel ringkasan lokasi file konfigurasi DocumentRoot berdasarkan sistem operasi dan distribusi server yang umum digunakan.

Sistem Operasi / Stack Lokasi File Konfigurasi Utama Default DocumentRoot
Ubuntu / Debian (Apache2) /etc/apache2/sites-available/000-default.conf /var/www/html
CentOS / RHEL / AlmaLinux (httpd) /etc/httpd/conf/httpd.conf /var/www/html
Windows (XAMPP) C:\xampp\apache\conf\httpd.conf C:/xampp/htdocs

Langkah Teknis Mengubah DocumentRoot di Linux (Ubuntu/Debian)

Ikuti prosedur sistematis berikut untuk memindahkan folder web root ke direktori baru, misalnya ke /home/username/projects/mywebsite.

1. Buat Direktori Kustom dan Beri Hak Akses

Pastikan folder tujuan telah dibuat dan memiliki hak akses baca (read) yang memadai agar prosesor web server dapat mengeksekusinya.

sudo mkdir -p /var/www/mywebsite
sudo chown -R $USER:$USER /var/www/mywebsite
sudo chmod -R 755 /var/www/mywebsite

2. Edit File Konfigurasi Virtual Host

Buka file konfigurasi default menggunakan teks editor seperti nano:

sudo nano /etc/apache2/sites-available/000-default.conf

Ubah nilai pada baris DocumentRoot dan tambahkan blok <Directory> secara eksplisit seperti contoh kode di bawah ini:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/mywebsite

    <Directory /var/www/mywebsite>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

3. Restart Layanan Apache

Simpan perubahan file (pada nano tekan CTRL+O lalu Enter, kemudian keluar dengan CTRL+X). Uji sintaks konfigurasi untuk memastikan tidak ada error penulisan, lalu restart layanan Apache.

sudo apache2ctl configtest
sudo systemctl restart apache2

Langkah Teknis Mengubah DocumentRoot di Windows (XAMPP)

Bagi pengembang yang menggunakan lingkungan lokal Windows melalui XAMPP, pengaturan DocumentRoot disatukan di dalam file konfigurasi global Apache.

1. Ubah Baris DocumentRoot di httpd.conf

Buka file C:\xampp\apache\conf\httpd.conf menggunakan Notepad++ atau teks editor pilihan Anda. Cari baris teks berikut dan ubah jalurnya:

DocumentRoot "C:/my_custom_htdocs"
<Directory "C:/my_custom_htdocs">

Catatan Penting: Gunakan garis miring biasa (/) pada jalur direktori Windows di dalam file konfigurasi Apache, bukan garis miring terbalik (\).

2. Restart Apache melalui XAMPP Control Panel

Buka aplikasi XAMPP Control Panel, klik tombol Stop pada modul Apache, lalu klik tombol Start kembali untuk memuat konfigurasi terbaru.

Troubleshooting Masalah Umum DocumentRoot

Kendala paling sering dijumpai setelah mengganti DocumentRoot adalah munculnya pesan 403 Forbidden saat mengakses alamat localhost atau domain server via browser. Hal ini disebabkan oleh:

  • Blok Directory Belum Diubah: Jalur di dalam tag <Directory ...> masih mengarah ke folder lama, bukan folder baru.
  • Izin Hak Akses Linux (Permissions): Pengguna sistem operasi belum memberikan izin eksekusi (chmod 755) atau kepemilikan folder yang benar kepada user www-data.
  • Modul Rewrite Belum Aktif: Jika website menggunakan framework PHP modern yang mengandalkan file .htaccess, pastikan direktif AllowOverride All telah terpasang di dalam blok direktori.