Cara Install LEMP Stack di Ubuntu 22.04 Server/Desktop

Apa Itu LEMP Stack ?

Cara Install LEMP Stack – LEMP Stack adalah kombinasi dari beberapa teknologi yang digunakan untuk membangun sebuah website. Kombinasi ini terdiri dari Linux, Nginx, MySQL, dan PHP

  • Linux sebagai sistem operasi untuk menjalankan server web.
  • Nginx adalah web server dan bertugas untuk menangani permintaan HTTP(s).
  • MySQL digunakan untuk menyimpan dan mengakses data.
  • PHP adalah bahasa pemrograman yang digunakan untuk membuat aplikasi web.

Cara Instalasi LEMP Stack di Server Ubuntu

Server Minimal Requirement

  • OS : Ubuntu Server 18.04, 20.04, 22.04, 24.04
  • Spesifikasi : 1 vCPU, 1 GB RAM, 10 GB Disk
  • Infrastruktur : Digital Ocean, Linode, VPS Lokal, AWS, GCP, dll

Baca Juga :   Cara Install WordPress di Ubuntu 24.04 dengan Nginx, Mariadb, PHP8.3 (LEMP)

Langkah #1 : Update Package

Sebelum Anda menginstal LEMP Stack, sangat disarankan untuk memperbarui repositori dan APT paket dengan menjalankan perintah berikut di sistem operasi Ubuntu 22.04 Anda.

sudo apt update && sudo apt upgrade -y

Mengubah Timezone

Atur timezone agar sesuai dengan waktu tempat tinggal Anda sekarang. Hal ini berguna agar waktu di server mudah untuk dibaca, terutama ketika membaca log server atau mengatur penjadwalan otomatis seperti cronjob. Di sini saya memilih Asia/Jakarta karena timezone saya berada di Waktu Indonesia Barat.

sudo dpkg-reconfigure tzdata

Langkah #2 : Install Nginx Web Server

Nginx adalah web server berkinerja tinggi yang populer pada saat ini. Selain itu, Nginx juga dapat digunakan sebagai server reverse proxy dan cache storage. Masukkan perintah berikut untuk menginstal server web Nginx.

sudo apt install nginx -y

Setelah terinstal, Anda dapat mengaktifkan Nginx agar secara otomatis mulai pada saat boot. Kemudian mulai service Nginx dan terakhir Cek status Nginx. Berikut adalah perintah untuk menjalankan itu semua.

sudo systemctl enable nginx
sudo systemctl start nginx
sudo systemctl status nginx

Sekarang ketik alamat IP publik server Ubuntu 22.04 Anda di browser seperti chrome. Akan tampil halaman web “Welcome to Nginx”, ini berarti server web Nginx berjalan dengan baik.

Welcome Nginx - www.awanservers.com
Welcome Nginx – www.awanservers.com

Jika halaman Welcome to Nginx! tidak muncul kemungkinan ada masalah pada firewall VPS. Masukkan perintah berikut untuk mengijinkan koneksi HTTP. (kendala ini sering saya alami di vps alibabacloud)

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Langkah #3 : Install MariaDB Database Server

MariaDB adalah pengganti yang dapat digunakan untuk MySQL. Mariadb dikembangkan oleh mantan anggota tim MySQL yang khawatir Oracle mungkin akan mengubah MySQL menjadi produk close source dan berbayar. Masukkan perintah berikut untuk menginstal MariaDB di Ubuntu 22.04.

sudo apt install mariadb-server mariadb-client -y

Setelah terinstal, Anda dapat mengaktifkan mariadb agar secara otomatis mulai pada saat boot. Kemudian mulai service mariadb dan terakhir Cek status mariadb database. Berikut adalah perintah untuk menjalankan itu semua.

sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo systemctl status mariadb

Pastikan hasilnya active running seperti ini :

Mariadb Status - www.awanservers.com
Mariadb Status – www.awanservers.com

Langkah #4 : Install PHP 8.2

Umunya versi PHP default yang tersedia di repositori OS biasanya lebih tua daripada rilis terbaru resmi. Begitu juga dengan Ubuntu 22.04 ini, Versi PHP yang tersedia secara default adalah PHP 8.1.

Untuk bisa menginstall PHP 8.2 di Ubuntu 22.04 ini, Anda perlu menambahkan Repositori PPA PHP. Berikut adalah cara untuk menambahkan repository PPA dan menginstall PHP 8.2 di Ubuntu 22.04. dan menginstallnya.

sudo apt update && \
sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common && \
sudo add-apt-repository ppa:ondrej/php -y && \
sudo apt update && \
sudo apt install -y php8.2 php8.2-fpm php8.2-bcmath php8.2-xml php8.2-mysql php8.2-zip php8.2-intl php8.2-ldap php8.2-gd php8.2-cli php8.2-bz2 php8.2-curl php8.2-mbstring php8.2-imagick php8.2-tokenizer php8.2-opcache php8.2-redis php8.2-cgi

Setelah itu jalankan service PHP-FPM dan cek statusnya. Perintah untuk menjalankan PHP-FPM adalah sebagai berikut :.

sudo systemctl enable php8.2-fpm
sudo systemctl start php8.2-fpm
sudo systemctl status php8.2-fpm

Jika semua langkah di atas sudah dilakukan, pastikan service PHP-FPM berhasil active seperti ini.

PHP8.2-FPM Status - www.awanservers.com
PHP8.2-FPM Status – www.awanservers.com

Langkah #5 : Membuat Nginx Server Block

Nginx Server Block adalah konfigurasi yang mirip seperti Virtual Host di Apache. Pada tutorial ini kami tidak menggunakan blok server default karena tidak memadai atau tidak bisa digunakan untuk menjalankan kode PHP.

Pertama hapus dulu symlink default di direktori sites-enabled dengan menjalankan perintah berikut.

sudo rm /etc/nginx/sites-enabled/default

Kemudian gunakan editor teks seperti Nano untuk membuat file blok server baru di direktori /etc/nginx/conf.d/.

sudo nano /etc/nginx/conf.d/awanservers.conf

Kemudian masukkan baris nginx server block berikut. Baris perintah di bawah ini akan me-listen nginx ke port 80.

server {
  listen 80;
  listen [::]:80;
  server_name awanservers.com;
  root /usr/share/nginx/html/;
  index index.php index.html index.htm index.nginx-debian.html;

  location / {
    try_files $uri $uri/ /index.php;
  }

  location ~ \.php$ {
    fastcgi_pass unix:/run/php/php8.2-fpm.sock;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
    include snippets/fastcgi-php.conf;
  }

 # A long browser cache lifetime can speed up repeat visits to your page
  location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
       access_log        off;
       log_not_found     off;
       expires           360d;
  }

  # disable access to hidden files
  location ~ /\.ht {
      access_log off;
      log_not_found off;
      deny all;
  }
}

Kemudian tes konfigurasi nginx di atas dengan perintah ini. Dan jika sukses, kemudian restart service nginx.

sudo nginx -t
sudo systemctl restart nginx

Langkah #6: Test PHP

Untuk menguji PHP-FPM dengan server web Nginx, kita perlu membuat file info.php di direktori webroot. Berikut adalah perintah untuk membuat file info.php :

echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/info.php

Simpan dan tutup file. Sekarang masukkan alamat http://IP-Publik/info.php ke browser seperti chrome. Anda akan melihat informasi PHP server Anda. Hal Ini berarti skrip PHP dapat berjalan dengan baik dengan server web Nginx di server Anda.

PHP Info - www.awanservers.com
PHP Info – www.awanservers.com

Proses instalasi LEMP Stack sudah berhasil dan selesai. Langkah selanjutnya adalah hapus file info.php untuk menjaga keamanan server.

sudo rm /usr/share/nginx/html/info.php

Jadi begitulan tutorial cara install lemp stack di ubuntu 22.04. Tutorial ini bisa Anda praktikkan di ubuntu 20.04 juga dan pastikan Anda mengikuti tutorial ini dengan baik dan benar.

Sumber : LEMP Stack

Suka Menulis

You might also like
Menampilkan IP Asli Visitor Web yang Menggunakan Cloudflare

Menampilkan IP Asli Visitor Web yang Menggunakan Cloudflare

Cara Konfigurasi IP Statis Armbian Linux 24.10 di STB HG680P

Cara Konfigurasi IP Statis Armbian Linux 24.10 di STB HG680P

Cara Menggunakan File Config SSH

Cara Menggunakan File Config SSH

Cara Mengubah Primary Group User di Linux

Cara Mengubah Primary Group User di Linux

Cara Redirect Website Ke Domain Lain Menggunakan NGINX

Cara Redirect Website Ke Domain Lain Menggunakan NGINX

Cara Install Docker di Ubuntu 22.04 | Docker dan Cara Kerja Docker

Cara Install Docker di Ubuntu 22.04 | Docker dan Cara Kerja Docker