Cara Instalasi LAMP Stack di Ubuntu 24.04 LTS

Daftar Isi
- Pengenalan
- Persyaratan
- Tahapan
- 1. Update dan Upgrade OS Ubuntu 24.04 LTS
- 2. Instalasi Apache2
- 3. Instalasi MySQL Server
- 4. Amankan Instalasi Database
- 5. Instalasi PHP dan Modul/Ekstensi Pendukung
- 6. Konfigurasi Apache Untuk File PHP
- 7. Uji Instalasi PHP
- 8. Instalasi phpMyAdmin
- 9. Studi Kasus: Deploy Landing Page (PHP + HTML)
- 10. Konfigurasi SSL dengan Let's Encrypt
- Kesimpulan
LAMP Stack (Linux, Apache, MySQL, PHP) adalah kombinasi software yang paling umum dipakai untuk menjalankan aplikasi web berbasis PHP, mulai dari CMS seperti WordPress sampai aplikasi custom. Panduan ini menjelaskan langkah instalasi LAMP Stack di Ubuntu 24.04 LTS, mulai dari update sistem sampai pengujian akhir, menggunakan paket qVM-2. Sebagai studi kasus, panduan ini juga mencakup deploy landing page (kombinasi PHP dan HTML), instalasi phpMyAdmin untuk manajemen database melalui browser, dan pemasangan SSL gratis menggunakan Let's Encrypt.
Pengenalan
LAMP Stack terdiri dari empat komponen utama: Linux sebagai sistem operasi, Apache sebagai web server, MySQL (atau MariaDB) sebagai database, dan PHP sebagai bahasa pemrograman. Kombinasi ini sudah dipakai bertahun-tahun karena stabil, dokumentasinya banyak, dan kompatibel dengan mayoritas aplikasi open source berbasis PHP.
Ubuntu 24.04 LTS dipilih sebagai basis OS karena mendapat dukungan resmi (security update dan bug fix) sampai April 2029, sehingga cocok dipakai untuk server yang butuh masa pakai jangka panjang tanpa perlu upgrade OS terlalu sering. Panduan ini ditujukan untuk VPS atau qVM yang baru saja di-deploy (fresh install), belum ada konfigurasi tambahan apa pun di atasnya.
Persyaratan
Sebelum mulai instalasi, pastikan hal-hal berikut sudah terpenuhi:
Software
- Ubuntu 24.04 LTS, kondisi fresh install (belum ada web server/database lain yang bentrok port)
- Akses root atau user dengan hak
sudo - Koneksi ke internet untuk mengunduh paket dari repository Ubuntu
- SSH client di sisi lokal untuk remote ke qVM
Hardware / Spesifikasi VPS qVM
Panduan ini menggunakan paket qVM-2, dengan spesifikasi:
- vCPU: 1 core
- RAM: 2 GiB
- Storage: 50 GiB
- Domain yang sudah diarahkan (A record) ke IP Publik qVM yang akan di gunakan untuk konfigurasi virtual host dan pembuatan sertikat SSL
Spesifikasi ini sudah cukup untuk menjalankan Apache, MySQL, PHP, dan phpMyAdmin sekaligus untuk landing page skala kecil sampai menengah. Kalau traffic mulai naik signifikan atau ukuran database membesar, tinggal upgrade ke paket qVM di atasnya tanpa perlu instalasi ulang.
Tahapan
1. Update dan Upgrade OS Ubuntu 24.04 LTS
Lakukan update dan upgrade pada sistem operasi Ubuntu 24.04 LTS terlebih dahulu, sebelum memulai instalasi service lainnya
apt update && sudo apt upgrade -y
2. Instalasi Apache2
Apache digunakan sebagai web server yang menerima request HTTP/HTTPS dan meneruskannya ke aplikasi.
apt install apache2 -y
Setelah itu, cek status service untuk memastikan Apache sudah berjalan:
systemctl status apache2
Kalau statusnya active (running), artinya Apache sudah bisa digunakan. Buka http://<IP-qVM> di browser, akan muncul halaman default Apache2 Ubuntu.

Untuk dapat otomatis running ketika qVM mengalami reboot, Anda dapat set enable pada Apache2 service, menggunakan perintah
systemctl enable apache2
3. Instalasi MySQL Server
MySQL digunakan untuk menyimpan seluruh data aplikasi dalam bentuk database relasional. Untuk melakukan instalasi MySQL gunakan perintah berikut:
apt install mysql-server -yKalau lebih memilih MariaDB (drop-in replacement MySQL, sering dipakai karena tetap open source penuh), ganti perintah di atas dengan:
apt install mariadb-server -y
Anda dapat memilih salah satu dan tidak di sarankan untuk running bersama karena service MySQL dan MariaDB sama-sama berjalan di port 3306 secara default.
4. Amankan Instalasi Database
Jalankan script keamanan bawaan untuk mengatur password root, menghapus user anonymous, dan menonaktifkan remote login untuk root.
mysql_secure_installationIkuti prompt yang muncul: set password root, jawab Y untuk menghapus test database, menghapus akses remote root, dan reload privilege table.

Pastikan MariaDB sudah running dan set enable supaya otomatis running apabila qVM mengalami reboot

5. Instalasi PHP dan Modul/Ekstensi Pendukung
Ubuntu 24.04 LTS secara default hanya menyediakan satu versi PHP di repository resminya. Supaya VPS qVM bisa multi-PHP — pasang beberapa versi PHP sekaligus dan dapat menyesuaikan kebutuhan dari aplikasi Anda. Tambahkan repository PPA Ondřej Surý, sumber paket PHP yang paling umum digunakan di Ubuntu.
apt install software-properties-common ca-certificates apt-transport-https lsb-release -y
add-apt-repository ppa:ondrej/php -y
apt update -y
Setelah repository aktif, instal PHP beserta modul/ekstensi yang dibutuhkan Apache dan MySQL agar bisa saling terhubung. Paket dari PPA ini pakai penamaan per versi (php8.3, php8.1, dan seterusnya), jadi versi lain bisa ditambahkan berdampingan kapan saja tanpa perlu uninstall versi yang sudah terpasang.
Contoh instalasi PHP 8.3
apt install php8.3 libapache2-mod-php8.3 php8.3-mysql php8.3-cli php8.3-curl php8.3-xml php8.3-mbstring php8.3-zip -y
Contoh instalasi PHP 8.4
apt install php8.4 libapache2-mod-php8.4 php8.4-mysql php8.4-cli php8.4-curl php8.4-xml php8.4-mbstring php8.4-zip -y
Ekstensi PHP di atas sudah mencakup kebutuhan dasar mayoritas aplikasi PHP modern (koneksi database, proses XML, string multibyte, dan lain-lain). Tambahkan ekstensi lain sesuai kebutuhan aplikasi yang akan di-deploy. Jika Anda butuh versi PHP lain berjalan berdampingan — misalnya PHP 8.1 untuk aplikasi lama yang belum kompatibel dengan versi terbaru — tinggal instal dengan pola nama paket yang sama:
apt install php8.1 libapache2-mod-php8.1 php8.1-mysql php8.1-cli -y
Apache hanya bisa mengaktifkan satu modul PHP dalam satu waktu. Untuk pindah versi yang aktif di Apache:
a2dismod php8.1
a2enmod php8.3
systemctl restart apache2
Sementara untuk PHP CLI (dipanggil lewat terminal, terpisah dari modul Apache), atur versi default dengan:
update-alternatives --config php
6. Konfigurasi Apache Untuk File PHP
Secara default Apache akan mendahulukan index.html dibanding index.php. Urutan ini perlu dibalik supaya aplikasi PHP bisa langsung terbaca.
vim /etc/apache2/mods-enabled/dir.confUbah urutan DirectoryIndex menjadi:
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
Simpan file, lalu restart Apache agar perubahan diterapkan:
sudo systemctl restart apache27. Uji Instalasi PHP
Buat file test untuk memastikan PHP sudah terhubung dengan Apache.
vim /var/www/html/info.phpIsi dengan:
<?php
phpinfo();
?>
Akses http://<IP-qVM>/info.php dari browser. Kalau muncul halaman informasi konfigurasi PHP, artinya seluruh stack (Apache, PHP, dan koneksi ke MySQL) sudah berjalan dengan benar.

File diatas hanya sebagai uji coba jika sudah berhasil Anda dapat menghapus file info.php tersebut karena file tersebut berisi informasi konfigurasi server yang sensitif kalau diakses publik.
rm /var/www/html/info.php8. Instalasi phpMyAdmin
phpMyAdmin dipakai untuk mengelola database MySQL lewat browser, tanpa harus selalu masuk lewat command line.
apt install phpmyadmin -y
Saat instalasi berjalan akan muncul beberapa prompt konfigurasi:
- Pilih apache2 dengan tombol spasi, lalu Tab → Enter, supaya konfigurasi web server dibuat otomatis
- Pilih Yes untuk mengonfigurasi database lewat
dbconfig-common - Masukkan password untuk user aplikasi phpMyAdmin saat diminta

Akses lewat http://<IP-qVM>/phpmyadmin, login pakai user root MySQL beserta password yang sudah diset di tahap 4.

9. Studi Kasus: Deploy Landing Page (PHP + HTML)
Sebagai contoh implementasi, kami akan deploy landing page sederhana yang menggabungkan markup HTML statis dengan satu bagian PHP dinamis, memakai domain lamp.sequel.web.id yang sudah diarahkan (A record) ke IP qVM-2. Anda dapat mengarahkan A record pada subdomain tersebut di DNS Management domain Anda contoh seperti gambar di bawah

Buat direktori project dan set kepemilikannya:
mkdir -p /var/www/landingpage
chown -R $USER:$USER /var/www/landingpageBuat file index.php sebagai halaman utama:
vim /var/www/landingpage/index.php<!DOCTYPE html>
<html lang="id">
<head>
<meta charset="UTF-8">
<title>Landing Page</title>
</head>
<body>
<h1>Selamat Datang</h1>
<p>Landing page ini berjalan di atas LAMP Stack, paket qVM-2.</p>
<footer>
<p>© <?php echo date("Y"); ?> — Semua hak cipta dilindungi.</p>
</footer>
</body>
</html>
Bagian HTML tetap statis seperti biasa, sementara tag <?php echo date("Y"); ?> membuat tahun di footer terupdate otomatis tanpa perlu diedit manual tiap tahun — contoh sederhana kenapa PHP dan HTML sering digabung dalam satu file.
Buat virtual host baru supaya domain diarahkan ke folder ini, bukan ke /var/www/html default:
vim /etc/apache2/sites-available/lamp.sequel.web.id.confContoh virtual host yang dapat Anda gunakan sebagai berikut:
<VirtualHost *:80>
ServerName lamp.sequel.web.id
DocumentRoot /var/www/landingpage
<Directory /var/www/landingpage>
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/landingpage_error.log
CustomLog ${APACHE_LOG_DIR}/landingpage_access.log combined
</VirtualHost>
Aktifkan virtual host, nonaktifkan default site, lalu reload Apache:
a2ensite lamp.sequel.web.id.conf
a2dissite 000-default.conf
systemctl reload apache2
Akses http://lamp.sequel.web.id - landing page sudah bisa dibuka lewat domain sendiri.

10. Konfigurasi SSL dengan Let's Encrypt
Untuk mendapat gratis SSL Anda dapat menggunakan certbot, silakan install terlebih dahulu beserta plugin Apache-nya untuk otomatisasi penerbitan dan pemasangan SSL.
apt install certbot python3-certbot-apache -y
Jalankan Certbot dan arahkan ke domain yang dipakai:
certbot --apache -d lamp.sequel.web.idCertbot akan minta email untuk notifikasi perpanjangan, konfirmasi persetujuan term of service, lalu menawarkan opsi redirect otomatis dari HTTP ke HTTPS — pilih opsi redirect supaya semua trafik lewat HTTPS.

Sertifikat Let's Encrypt berlaku 90 hari dan diperpanjang otomatis lewat systemd timer bawaan Certbot. Cek dulu apakah mekanisme renewal-nya jalan normal:
certbot renew --dry-run
Setelah tahap ini, https://lamp.sequel.web.id sudah bisa diakses dengan koneksi terenkripsi SSL. Jalur /phpmyadmin di domain yang sama otomatis ikut ter-enkripsi juga karena mengikuti konfigurasi virtual host yang sama, yang sudah diubah Certbot.

Kesimpulan
Sampai tahap ini, VPS qVM-2 (1 core, 2 GiB RAM, 50 GiB storage) sudah punya LAMP Stack lengkap: Apache, MySQL, PHP, dan phpMyAdmin untuk manajemen database lewat browser. Studi kasus landing page (kombinasi HTML statis dan PHP dinamis) berhasil di-deploy lewat virtual host terpisah dan sudah diamankan dengan SSL gratis dari Let's Encrypt beserta redirect otomatis ke HTTPS. Setup ini sudah cukup dipakai untuk production landing page skala kecil-menengah; untuk aplikasi yang lebih besar, langkah lanjutannya adalah membuat user database khusus per aplikasi (bukan pakai root) dan menambah virtual host baru untuk tiap domain/aplikasi berikutnya.
Akun Sequel Anda siap untuk memesan & mengelola layanan cloud.
