Menginstal Apache, MariaDB, dan PHP 7 pada Ubuntu 19.10

803

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.

php_info

Dengan demikian, LAMP stack sukses diinstal.

Saya menyarankan menggunakan aplikasi bernama Adminer sebagai ganti PHPMyAdmin.

admnr

App ini hanya sebuah file php yang bisa ditempatkan di web root. Adminer mendukung MariaDB, PostgreSQL, SQLite, dll.

Komentar