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.