Install LAMP Stack di Ubuntu 20.04

Pembukaan

Beberapa hari yang lalu, saya diminta untuk install sekaligus configure webserver di VPS Ubuntu oleh salah satu perusahaan di Jakarta, mereka request agar menggunakan LAMP stack. Saya buat tulisan ini untuk reminder bagi diri saya sendiri dikemudian hari sekaligus sharing kepada teman-teman yang membutuhkan.

Linux Apache MySQL PHP (LAMP)

LAMP Stack adalah kumpulan beberapa perangkat lunak open source yang digunakan bersamaan untuk membangun sebuah web server. LAMP ini adalah singkatan dari Linux, Apache, MySQL, dan PHP. ada juga istilah LEMP yang berarti menggunakan Nginx sebagai HTTP server nya.

Step 1 - Install Apache

Seperti biasa sebelum memulai aktifitas saya biasanya selalu mengupdate repository linux untuk memastikan semuanya up to date.

sudo apt update

Lalu kita install Apache.

sudo apt install apache2

Note: in case jika apache butuh di adjust dengan firewall jalankan command: (bisa diabaikan bila tidak perlu)

sudo ufw app list untuk melihat list apps, lalu kalian akan melihat output seperti ini:

Available applications:
  Apache
  Apache Full
  Apache Secure
  • Apache: HTTP Server port 80 (unencrypted web traffic)
  • Apache Full: HTTP Server port 80 dan 443
  • Apache Secure: HTTP Server port 443 (SSL)

lalu jalankan command:

sudo ufw allow in 'apps name' (misal: sudo ufw allow in 'Apache')

untuk melihat status firewall silahkan jalankan command:

sudo ufw status

lalu kalian bisa cek apabila Apache sudah running atau belum dengan

sudo systemctl status apache2

atau bisa langsung cek dengan memasukkan http://ip_server di web browser.

Step 2 - Install MySQL (MariaDB)

Install Mysql server dengan command:

sudo apt install mariadb-server

lalu jalankan instalasi mysql dengan command:

sudo mysql_secure_installation

Setelah di install kalian bisa login ke MySQL dengan command:

sudo mysql

Step 3 - Install PHP

Install beberapa package PHP dengan command:

sudo apt install php libapache2-mod-php php-mysql

Setelah selesai kalian bisa cek versi php dengan command:

php -v

Step 4 - Setting Virtual Host

3 Langkah sebelumnya rasanya cukup terkait langkah-langkah instalasi LAMP stack, tapi rasanya kurang lengkap kalo ga dijelasin juga sedikit gambaran setting virtual host di Apache.

di Ubuntu, path default untuk menaruh file-file website ada di /var/www/html, kita bisa menggunakan itu direktori itu atau membuat direktori baru di /var/wwww. Misal saya bisa menaruh file-file website erzaf.com di /var/www/erzaf (sesuaikan nama foldernya dengan kebutuhan masing-masing).

next kita assign ownership terhadap folder tersebut

sudo chown -R user:group /var/www/erzaf

(sesuaikan user:group)

Lalu selanjutnya kita buat sekaligus write file confignya ke folder milik Apache

sudo nano /etc/apache2/sites-available/erzaf.conf

Isi sebagai berikut:

<VirtualHost *:80>
    ServerName erzaf.com
    ServerAlias www.erzaf.com
    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/erzaf
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Note:

  • *:80 artinya ada port 80, sesuaikan dengan kebutuhan.
  • Sesuaikan nama domain (erzaf.com) dan DocumentRoot nya (/var/www/erzaf) sesuai kebutuhan kalian.

Kalian bisa save file tersebut dengan menekan CTRL+X lalu Y dan ENTER

Lalu enable virtual host dengan command:

sudo a2ensite erzaf.conf

Kemudian test untuk memastikan file konfigurasi kita tidak ada yang error

sudo apache2ctl configtest

dan Restart Apache

sudo systemctl restart apache2

atau bisa juga di reload

sudo systemctl reload apache2

Okee, selanjutnya kalian tinggal arahkan DNS domain kalian ke IP public dari VPS yang jadi web servernya.