Apache2 adalah salah satu web server yang paling banyak digunakan di dunia. Apache umum dipakai untuk meng-host website berbasis PHP, HTML, maupun berbagai web framework modern.
Pada artikel ini, saya akan menjelaskan langkah-langkah instalasi Apache2 di Debian 12, membuat VirtualHost, serta mengamankan website menggunakan HTTPS dengan Let’s Encrypt.
Table of Contents
Apache2 adalah salah satu web server yang paling banyak digunakan di dunia. Apache sering digunakan untuk menjalankan website berbasis PHP, HTML, dan berbagai web framework.
Artikel ini membahas proses instalasi Apache2 di Debian 12, pembuatan VirtualHost, serta konfigurasi HTTPS menggunakan Let’s Encrypt.
Konfigurasi ini cocok digunakan untuk lingkungan belajar, server internal, maupun deployment web production-ready.
1. Instalasi Apache2
Langkah pertama adalah melakukan update sistem dan menginstal Apache2:
sudo apt update
sudo apt upgrade -y
sudo apt install apache2 -y
Setelah instalasi selesai, Apache2 akan berjalan otomatis. Untuk memastikan service Apache aktif, jalankan perintah berikut:
sudo systemctl status apache2
Jika status menunjukkan active (running), maka Apache2 siap dikonfigurasi.
2. Struktur Direktori Penting Apache2
Memahami struktur direktori Apache sangat penting untuk konfigurasi dan troubleshooting.
| Path | Fungsi |
|---|---|
/etc/apache2/apache2.conf |
Konfigurasi utama Apache |
/etc/apache2/sites-available/ |
Folder file VirtualHost |
/etc/apache2/sites-enabled/ |
Symlink VirtualHost aktif |
/var/www/html/ |
Document root default |
3. Membuat VirtualHost Baru
Pada contoh ini digunakan domain lokal server.lan.
a. Membuat direktori website
sudo mkdir -p /var/www/server.lan
sudo chown -R $USER:$USER /var/www/server.lan
Direktori ini akan menjadi document root untuk website.
b. Membuat file konfigurasi VirtualHost
sudo nano /etc/apache2/sites-available/server.lan.conf Isi dengan konfigurasi berikut:
<VirtualHost *:80>
ServerName server.lan
ServerAlias www.server.lan
DocumentRoot /var/www/server.lan
<Directory /var/www/server.lan>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/server.lan_error.log
CustomLog ${APACHE_LOG_DIR}/server.lan_access.log combined
</VirtualHost>
Konfigurasi ini mendefinisikan domain, document root, permission akses, serta file log untuk VirtualHost.
4. Mengaktifkan VirtualHost
Untuk mengaktifkan VirtualHost yang telah dibuat:
sudo a2ensite server.lan.conf
sudo systemctl reload apache2
Setelah itu, Apache akan mulai melayani konten dari direktori /var/www/server.lan.
5. Mengaktifkan .htaccess (Opsional)
Jika ingin menggunakan .htaccess (misalnya untuk WordPress, Laravel, atau URL rewrite), pastikan <Directory> berikut aktif:
AllowOverride All
6. Mengaktifkan Modul Rewrite
Modul reAllowOverride Allwrite diperlukan untuk URL clean dan .htaccess:
sudo a2enmod rewrite
sudo systemctl restart apache2
7. Mengecek Konfigurasi Apache
Sebelum melanjutkan ke HTTPS, lakukan pengecekan konfigurasi:
sudo apache2ctl configtest
Jika output:
Syntax OK
maka konfigurasi Apache valid dan aman digunakan.
8. Konfigurasi HTTPS dengan Let’s Encrypt
Untuk mengamankan website menggunakan SSL gratis dari Let’s Encrypt:
sudo apt install certbot python3-certbot-apache -y
sudo certbot --apache
Ikuti instruksi yang muncul di layar untuk mengaktifkan HTTPS pada domain Anda.
Penutup
Selamat Anda telah berhasil:
- Menginstal Apache2 di Debian 12
- Membuat dan mengaktifkan VirtualHost
- Mengaktifkan modul rewrite
- Mengamankan website dengan HTTPS menggunakan Let’s Encrypt
Apache2 adalah web server yang fleksibel dan powerful. Dengan memahami dasar-dasar ini, Anda siap membangun web server profesional untuk PHP, WordPress, Laravel, maupun aplikasi web lainnya.