Menginstal Apache, MariaDB, dan PHP 7 pada Ubuntu 19.10
Panduan ini dengan asumsi user non-root dengan akses sudo. Jangan lupa sudo apt update
sebelumnya.
Menginstal Apache
Jalankan
$ sudo apt install apache2
(Opsional) Konfigurasi Firewall UFW
$ sudo ufw app list
Available applications (contoh):
Apache
Apache Full
Apache Secure
OpenSSH
Beri izin Apache dan aktifkan ufw
$ sudo ufw allow in 'Apache Full'
$ sudo ufw allow in 'OpenSSH'
$ sudo ufw enable
(tekan y)
$ sudo ufw status
Status: active
To Action From
-- ------ ----
Apache Full ALLOW Anywhere
OpenSSH ALLOW Anywhere
Apache Full (v6) ALLOW Anywhere (v6)
OpenSSH (v6) ALLOW Anywhere (v6)
Menginstal MariaDB
$ sudo apt install mariadb-server
Mengamankan MariaDB
Jalankan perintah
$ sudo mysql_secure_installation
lalu ikuti petunjuk. Password root awal hanyalah blank (tekan Enter). Saran saya, jawab semua dengan Y dan buat password root baru.
Access denied for user 'root'@'localhost'
Jika mengalami error seperti ini, lakukan
$ sudo mysql -u root
use mysql;
[mysql] update user set plugin='mysql_native_password' where User='root';
[mysql] flush privileges;
Lalu coba kembali mysql -u root -p
.
Menginstal PHP
Perintah di bawah akan menginstal PHP
$ sudo apt install php libapache2-mod-php php-mysql
Edit file dir.conf menggunakan editor favorit (e.g. nano) untuk membuat index.php
lebih mendapat prioritas. Ubah dari yang tadinya
<IfModule mod_dir.c>
DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm
</IfModule>
menjadi
<IfModule mod_dir.c>
DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm
</IfModule>
Simpan perubahan (Ctrl-X lalu Y lalu Enter). Restart Apache:
$ sudo service apache2 restart
$ sudo service apache2 status
Pengujian PHP
Web root Apache pada Ubuntu 19 berada di /var/www/html. Buat file baru bernama info.php.
$ sudo nano /var/www/html/info.php
lalu di dalam file tersebut
<?php
phpinfo();
?>
Tuju http://{alamat_ip_server}/info.php. Pada contoh ini, tentu saja {alamat_ip_server}
adalah localhost. Seharusnya laman berjudul "PHP 7.x...." sukses terbaca.
Dengan demikian, LAMP stack sukses diinstal.
Saya menyarankan menggunakan aplikasi bernama Adminer sebagai ganti PHPMyAdmin.
App ini hanya sebuah file php yang bisa ditempatkan di web root. Adminer mendukung MariaDB, PostgreSQL, SQLite, dll.