Cara Mudah dan Lengkap Install LAMP di Manjaro Linux (Apache, MariaDB, PHP)

Pendahuluan

Dalam dunia pengembangan aplikasi web berbasis PHP, memiliki web server lokal adalah kebutuhan utama, baik bagi developer profesional maupun pelajar IT. Web server lokal memungkinkan proses pengembangan, pengujian, dan debugging aplikasi dilakukan dengan lebih cepat tanpa harus bergantung pada server online. Salah satu solusi yang paling populer dan terbukti stabil adalah LAMP Stack.

LAMP merupakan singkatan dari Linux, Apache, MariaDB (MySQL), dan PHP—sebuah kombinasi teknologi open-source yang ringan, stabil, dan kompatibel dengan berbagai framework serta CMS populer seperti Laravel, CodeIgniter, dan WordPress. Karena fleksibilitasnya, LAMP masih menjadi pilihan utama dalam pengembangan aplikasi web hingga saat ini.

Sebagai distribusi berbasis Arch Linux, Manjaro Linux menawarkan performa inggi, manajemen paket modern, serta sistem rolling release yang selalu menghadirkan versi perangkat lunak terbaru. Namun, perbedaan struktur dan manajemen paket dibandingkan distro berbasis Debian (seperti Ubuntu) sering membuat proses instalasi LAMP di Manjaro terasa membingungkan, terutama bagi pengguna pemula.

Melalui tutorial ini, kamu akan mempelajari cara menginstal dan mengonfigurasi LAMP Stack di Manjaro Linux secara lengkap dan bertahap, mulai dari pemasangan Apache sebagai web server, MariaDB sebagai sistem manajemen basis data, hingga PHP sebagai bahasa pemrograman server-side. Setiap langkah disusun secara runtut, disertai penjelasan yang jelas agar mudah dipahami dan langsung dapat dipraktikkan.

Setelah menyelesaikan tutorial ini, kamu akan memiliki web server lokal yang siap digunakan untuk pengembangan dan pengujian berbagai aplikasi web berbasis PHP di Manjaro Linux.

Penting

Sebelum memulai instalasi, pastikan sistem Manjaro kamu telah tersinkronisasi sepenuhnya. Hindari menambahkan atau menginstal paket tanpa melakukan update sistem terlebih dahulu, karena dapat menyebabkan konflik dependensi. Untuk melakukan sinkronisasi sistem, jalankan perintah berikut:

sudo pacman -Syyu

Seluruh perintah dalam tutorial ini memerlukan hak akses root, sehingga harus dijalankan dengan menambahkan sudo di depannya.

Lingkungan dan Kebutuhan Sistem

Sebelum masuk ke proses instalasi, pastikan sistem Manjaro Linux yang digunakan telah memenuhi beberapa kebutuhan dasar berikut:

  1. Manjaro Linux (disarankan versi terbaru)
  2. Koneksi internet yang stabil
  3. Akses terminal
  4. Hak akses administrator (sudo)

Tutorial ini dijalankan menggunakan Manjaro Linux 64-bit dengan package manager pacman. Perintah yang digunakan mungkin sedikit berbeda jika kamu menggunakan environment atau konfigurasi khusus.

Install Apache

Apache adalah web server yang berfungsi untuk melayani permintaan HTTP dari browser. Pada tahap ini, kita akan menginstal Apache serta melakukan konfigurasi dasar agar web server dapat berjalan dengan baik di Manjaro Linux.

Install Apache Web Server

Install Apache menggunakan perintah berikut:

sudo pacman -S apache

Setelah instalasi selesai, lakukan konfigurasi awal dengan mengedit file konfigurasi Apache:

sudo gnome-text-editor /etc/httpd/conf/httpd.conf

Nonaktifkan Modul unique_id Cari baris berikut:

LoadModule unique_id_module modules/mod_unique_id.so

Tambahkan tanda # di depannya agar menjadi:

# LoadModule unique_id_module modules/mod_unique_id.so

Konfigurasi ServerAdmin

Cari direktif ServerAdmin dan ganti dengan alamat email yang valid:

ServerAdmin you@example.com
Tidak wajib untuk testing lokal, tapi merupakan praktik terbaik.

Konfigurasi ServerName Cari direktif ServerName dan ganti dengan IP atau hostname server kamu:

ServerName ip.x.y.z:80
Contoh untuk lokal:
ServerName 127.0.0.1:80

Simpan perubahan dan tutup GNOME Text Editor.

Jalankan dan Aktifkan Apache

sudo systemctl enable --now httpd

Verifikasi Status Apache :

sudo systemctl status httpd

Jika berhasil, status akan menampilkan active (running):

httpd.service - Apache Web Server
Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
Active: active (running)

Uji Web Server

Buat halaman web sederhana di direktori root Apache:

sudo gnome-text-editor /srv/http/index.html

Isi file dengan:

<h1>It works!</h1>

Buka browser dan akses:

http://ip.x.y.z

atau untuk lokal:

http://localhost

Jika muncul tulisan “It works!”, maka Apache berhasil terpasang dan berjalan dengan baik 🎉

Install MariaDB

MariaDB adalah implementasi default dari MySQL di Manjaro Linux. Kita akan menginstal MariaDB, menginisialisasi data directory, menjalankan service, dan mengamankan instalasi.

Install MariaDB Jalankan perintah berikut untuk menginstal MariaDB beserta client-nya:

sudo pacman -S mariadb mariadb-clients

Inisialisasi Data Directory Sebelum menjalankan MariaDB, data directory harus diinisialisasi menggunakan skrip installer bawaan. Jangan ubah opsi --datadir.

sudo mariadb-install-db --user=mysql --basedir=/usr --datadir=/var/lib/mysql

Perintah ini akan membuat struktur database dasar yang diperlukan MariaDB.

Menjalankan dan Mengaktifkan MariaDB Setelah inisialisasi selesai, jalankan MariaDB dan aktifkan agar otomatis berjalan saat boot:

sudo systemctl enable --now mariadb

Verifikasi Status MariaDB Cek apakah service MariaDB berjalan dengan baik:

sudo systemctl status mariadb

Hasil yang berhasil biasanya terlihat seperti ini:

mariadb.service - MariaDB 10.9.3 database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled)
Active: active (running)

Jika status active (running) muncul, MariaDB sudah siap digunakan ✅

Amankan Instalasi MariaDB Disarankan untuk mengamankan instalasi MariaDB menggunakan skrip yang disediakan:

sudo mariadb-secure-installation

Perhatikan hal berikut saat mengikuti panduan:

  1. Password root MariaDB tidak sama dengan password sistem Linux kamu.
  2. Ikuti instruksi pada layar untuk:
  3. Mengatur password root MariaDB
  4. Menghapus user anonim
  5. Menonaktifkan login root dari jarak jauh
  6. Menghapus database test
  7. Me-reload privilege tables

Setelah selesai, MariaDB kamu akan lebih aman dan siap digunakan untuk pengembangan aplikasi web.

Install PHP

Manjaro selalu menyediakan versi PHP terbaru. Kita akan menginstal PHP beserta modul Apache agar bisa dijalankan di web server.

Install PHP dan Modul Apache Jalankan perintah berikut:

sudo pacman -S php php-apache

Konfigurasi Modul PHP di Apache Buka file konfigurasi Apache menggunakan GNOME Text Editor:

sudo gnome-text-editor /etc/httpd/conf/httpd.conf

Ganti MPM Module Cari baris berikut:

#LoadModule mpm_event_module modules/mod_mpm_event.so

Ubah menjadi:

LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
Pastikan mpm_event_module dikomentari, dan mpm_prefork_module aktif. Apache membutuhkan mpm_prefork untuk menjalankan modul PHP secara stabil.

Tambahkan Modul PHP Scroll ke bagian bawah file dan tambahkan baris berikut:

LoadModule php_module modules/libphp.so
AddHandler php-script .php
Include conf/extra/php_module.conf

Simpan dan tutup GNOME Text Editor.

Cek Konfigurasi Apache Sebelum merestart service, pastikan konfigurasi Apache valid:

sudo apachectl configtest

Jika muncul Syntax OK, konfigurasi sudah benar.

Restart Apache Restart service Apache agar perubahan diterapkan:

sudo apachectl restart

Uji PHP Buat file pengujian PHP di root web Apache:

sudo gnome-text-editor /srv/http/info.php

Isi file dengan:

<?php
phpinfo();
?>

Simpan file.

Akses Halaman Info PHP Buka browser dan akses:

http://ip.x.y.z/info.php

atau untuk lokal:

http://localhost/info.php

Jika berhasil, akan muncul halaman informasi PHP, termasuk versi PHP, modul yang aktif, dan konfigurasi server. Ini menandakan Apache dan PHP sudah terintegrasi dengan baik ✅

Install phpMyAdmin

phpMyAdmin adalah alat grafis untuk mengelola MySQL/MariaDB, memungkinkan kamu membuat, mengedit, dan menghapus database melalui antarmuka web. Tutorial ini akan membahas instalasi, konfigurasi PHP, Apache, dan pengamanan phpMyAdmin.

Install phpMyAdmin

sudo pacman -S phpmyadmin

Konfigurasi PHP untuk MariaDB Buka atau buat file konfigurasi PHP untuk MariaDB:

php --ini

nanti akan muncul

Configuration File (php.ini) Path: "/etc/php"
Loaded Configuration File: "/etc/php/php.ini"
Scan for additional .ini files in: "/etc/php/conf.d"
Additional .ini files parsed: (none)

Buka atau buat file konfigurasi PHP untuk MariaDB:

sudo gnome-text-editor /etc/php/php.ini

hilangkan tanda ; (semicolon) baris berikut untuk mengaktifkan :

extension=bz2
extension=iconv
extension=mysqli
extension=pdo_mysql

Simpan dan tutup file.

Buat Konfigurasi Apache untuk phpMyAdmin Buat file konfigurasi Apache khusus phpMyAdmin:

sudo gnome-text-editor /etc/httpd/conf/extra/phpmyadmin.conf

Tambahkan konfigurasi berikut:

Alias /phpmyadmin "/usr/share/webapps/phpMyAdmin"

<Directory "/usr/share/webapps/phpMyAdmin">
DirectoryIndex index.php
AllowOverride All
Options FollowSymlinks
Require all granted
</Directory>

Simpan dan tutup file.

Sertakan Konfigurasi phpMyAdmin di Apache Edit file utama konfigurasi Apache:

sudo gnome-text-editor /etc/httpd/conf/httpd.conf

Scroll ke bagian paling bawah, tambahkan baris berikut:

Include conf/extra/phpmyadmin.conf


Cek dan Restart ApachePeriksa apakah konfigurasi Apache valid:

sudo apachectl configtest

Jika muncul Syntax OK, restart Apache:

sudo apachectl restart

Konfigurasi phpMyAdmin Buka file konfigurasi phpMyAdmin:

sudo gnome-text-editor /etc/webapps/phpmyadmin/config.inc.php

Tambahkan nilai blowfish_secret (gunakan string acak 16-byte hex):

openssl rand -hex 16

Hasilnya tambahkan ke file:

$cfg['blowfish_secret'] = 'hasil-random-dari-openssl';
$cfg['TempDir'] = '/tmp';

Simpan file.

Menggunakan Terminal Alternatif cepat via terminal:

sudo sed -i -e "/blowfish/s/''/'$(openssl rand -hex 16)'/gi" /etc/webapps/phpmyadmin/config.inc.php
echo "\$cfg['TempDir'] = '/tmp';" | sudo tee -a /etc/webapps/phpmyadmin/config.inc.php

Uji phpMyAdmin Buka browser dan akses:

http://ip.x.y.z/phpmyadmin

atau untuk lokal:

http://localhost/phpmyadmin

Jika berhasil, kamu akan melihat halaman login phpMyAdmin, siap digunakan untuk mengelola database MariaDB melalui antarmuka web ✅