Last Updated on by Linux Jateng

Bagaimana cara install LEMP stack di Linux Mint/ Ubuntu dan turunannya? LEMP (Linux, NGINX, MySQL dan PHP) adalah alternatif yang populer untuk paket aplikasi LAMP atau LAMP stack yang menggunakan NGINX (baca: engine-X)sebagai ganti Apache. Panduan ini akan membantu sobat terkait LEMP melalui penginstalan dasar, penyiapan, dan konfigurasi LEMP di Debian dan turunannya seperti Ubuntu dan Linux Mint. Untuk konfigurasi lokal menggunakan XAMPP baca disini.




Table Of Contents

Apa Itu LEMP Stack

Pengertian LEMP stack adalah tumpukan atau paket aplikasi yang terdiri dari kombinasi paket perangkat lunak – Linux, Nginx (baca: engine-X), MariaDB dan PHP. Sobat dapat menggunakan LEMP untuk testing atau dalam lingkungan produksi untuk membangun aplikasi web menggunakan kerangka kerja PHP seperti Laravel atau Yii, atau sistem manajemen konten seperti WordPress, Drupal, atau Joomla.

Sobat mungkin bertanya-tanya apa perbedaan antara LAMP dan LEMP stack. Nah, satu-satunya perbedaan adalah server web yang disertakan – yaitu Apache (dalam LAMP) dan Nginx (dalam LEMP). Kedua server web tersebut cukup bagus dan meskipun Apache adalah yang paling sering digunakan, Nginx sedang naik daun dan diprediksi bakal menjadi saingan berat Apache.

Aplikasi lain yang banyak digunakan yang biasanya dipasang bersamaan LEMP stack adalah PhpMyAdmin – yang merupakan sebuah Data Base Management System (DBMS) adalah alat berbasis web PHP untuk mengelola server database MySQL / MariaDB dari browser web.

Pada artikel ini, sobat akan mengetahui cara menginstal dan mengkonfigurasi LEMP stack dengan PhpMyAdmin di server Debian atau turunannya seperti Ubuntu dan Linux Mint.

Cara Install Nginx

Untuk menyajikan halaman web kepada pengunjung situs, selain menggunakan Apache sobat dapat menggunakan Nginx, yaitu sebuah server web populer yang terkenal dengan kinerja dan stabilitasnya secara keseluruhan. Perangkat lunak apa pun yang akan Anda gunakan untuk prosedur ini akan dikirim langsung dari repositori paket Debian default. Ini berarti Anda dapat menggunakan repository untuk menyelesaikan penginstalan.

Karena ini adalah pertama kalinya sobat menggunakan apt sesi ini, sobat sebaiknya memulai dengan memperbarui indeks paket lokal pada server baru dilanjutkan dengan menginstal web server Nginx, caranya cukup ketikkan perintah:



sudo apt update
sudo apt install nginx

Sebagai info tambahan, file konfigurasi Nginx disimpan di dalam direktori /etc/nginx dan file konfigurasi utamanya adalah /etc/nginx/nginx.conf. Yang penting, root dokumen default untuk menyimpan file web sobat adalah /usr/share/nginx/html/. Namun sobat dapat menggunakan standar /var/www/html yang harus dikonfigurasi di file konfigurasi blok server situs web atau aplikasi yang sobat jalankan.

Penginstal paket Ubuntu memicu systemd untuk memulai layanan Nginx dan mengaktifkannya untuk memulai secara otomatis setiap kali server di-restart. Gunakan perintah systemctl berikut untuk mengonfirmasi bahwa layanan sedang berjalan dan diaktifkan.

sudo systemctl status nginx 
sudo systemctl is-enabled nginx

Apabila servis Nginx sudah aktif (silahkan lihat gambar berikut) itu artinya sudah berhasil..

Nginx Service

Untuk komputer lokal, coba sobat ketikkan localhost pada browser sobat. Untuk server silahkan coba mengetikkan alamat IP server sobat, dan pastikan hasilnya sama yaitu “Welcome Nginx” sudah muncul sebagaimana gambar berikut:

Nginx sudah berhasil di install

Cara Install MariaDB

Sekarang server web (Nginx) sudah aktif dan berjalan, saatnya menginstal MariaDB. MariaDB adalah fork yang dikembangkan oleh komunitas dan didukung secara komersial dari sistem manajemen database relasional MySQL, mudahnya MariaDB adalah versi gratis dari MySQL yang sekarang berbayar karena MySQL diakuisisi oleh Oracle. Instal MariaDB dengan perintah:

sudo apt install mariadb-server mariadb-client

Dalam LEMP stack, layanan atau service MariaDB juga secara otomatis dijalankan dan diaktifkan untuk selalu running pada saat boot sistem dan sobat dapat mengonfirmasi ini menggunakan perintah berikut:

sudo systemctl status mariadb
sudo systemctl is-enabled mariadb
MariaDB Linux Install

Sobat harus meningkatkan keamanan MariaDB dengan menjalankan perintah mysql_secure_installation, yang akan menyediakan beberapa opsi dasar, namun penting untuk dikonfigurasi. Silahkan ketikkan:

sudo mysql_secure_installation

Kemudian pilih opsi untuk mengatur kata sandi pengguna “root” database (atau administrator) dan ikuti petunjuknya dan baca pertanyaan dengan cermat. Untuk mengamankan server database sobat, jawab pertanyaan seperti yang ditunjukkan pada yang ditampilkan pada layar. Sebagai contoh sobat dapat menggunakan konfigurasi berikut ini:

Enter current password for root (enter for none): Enter
Set a root password? [Y/n] Y
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Untuk melakukan manajemen MariaDB, sobat dapat masuk ke dalam MariaDB dengan cara ketikkan melalui Terminal. Untuk membuat, mengelola, dan melakukan operasi database, Anda perlu perintah mysql shell dengan tanda -u untuk menentukan nama pengguna database dan -p untuk memberikan kata password pengguna.

Untuk terhubung sebagai pengguna root, gunakan perintah sudo (bahkan tanpa tanda -p) jika tidak Anda akan menerima kesalahan atau error.

mysql -u root -p
sudo mysql -u root

Cara Install PHP

Sobat telah menginstal Nginx pada LEMP Stack untuk menyajikan konten Anda dan MariaDB untuk menyimpan dan mengelola data Anda. Anda sekarang dapat menginstal PHP untuk menangani kode dan menghasilkan konten dinamis untuk server web. PHP adalah bahasa pemrograman open source, fleksibel, dan dinamis yang populer untuk membangun situs web dan aplikasi web. Ini mendukung berbagai teknik pemrograman. Yang penting, komunitas PHP besar dan beragam, terdiri dari library, framework, dan komponen berguna lainnya yang tak terhitung jumlahnya.

NGINX menggunakan FPM (FastCGI Process Manager) atau PHP-FPM, untuk memproses skrip PHP. PHP-FPM adalah implementasi PHP FastCGI alternatif yang banyak digunakan yang dilengkapi dengan banyak fitur tambahan dan digunakan untuk mendukung situs / aplikasi web dengan lalu lintas tinggi. Untuk menginstal PHP dan PHP-FPM, jalankan perintah berikut yang juga akan menginstal beberapa paket tambahan yang diperlukan.

sudo apt install php php-mysql php-fpm

Karena PHP 7.4 adalah versi default PHP di Ubuntu 20.04, file konfigurasi PHP ada di /etc/php/7.4/ dan file konfigurasi PHP-FPM disimpan di /etc/php/7.4/fpm. Selanjutnya, periksa apakah layanan php7.4-fpm sudah aktif dan berjalan dan apakah sudah diaktifkan dengan perintah berikut.

sudo systemctl status php7.4-fpm
sudo systemctl is-enabled php7.4-fpm
Instalasi PHP FPM Linux Mint

Cara Konfigurasi Nginx

Sebagai bagian LEMP stack, sekarang sobat perlu mengkonfigurasi NGINX agar meneruskan request atau permintaan client ke PHP-FPM, yang secara default dikonfigurasi untuk mendengarkan pada soket UNIX seperti yang ditentukan oleh parameter listen di /etc/php/7.4/fpm/pool.d/www.conf sebagai file konfigurasi default.

Jika sobat menggunakan xed sebagai aplikasi teks editor, maka gunakan perintah ini (jika tidak silahkan ganti xed dengan yang lain seperti gedit, vi, Bracket, dan lainnya).

sudo xed /etc/php/7.4/fpm/pool.d/www.conf
Konfigurasi Nginx LEMP Stack

Di dalam file konfigurasi blok server default (/etc/nginx/sites-available/default), hapus komentar pada petunjuk lokasi untuk memproses permintaan PHP agar terlihat seperti yang ditunjukkan pada gambar berikut (jalankan perintah terlebih dahulu):

sudo xed /etc/nginx/sites-available/default
sites-available-nginx-setting

Simpan dan tutup jendela Xed teks editor, lakukan pengujian sintaks dan restart Nginx dengan cara:

sudo nginx -t
sudo systemctl restart nginx
restart-nginx

Sekarang uji apakah NGINX dapat bekerja bersama dengan PHP-FPM untuk memproses permintaan PHP. Buat halaman info.php sederhana di bawah direktori root dokumen.

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

Buka browser favorit sobat, lalu navigasikan atau buka alamat IP server dilanjutkan dengan /info.php. Atau bisa juga menggunakan localhost/info.php untuk komputer lokal. Halaman PHP harus memuat seperti yang ditunjukkan pada gambar berikut.

Test Nginx PHP LEMP Stack

Cara Install PhpMyAdmin

PhpMyAdmin adalah aplikasi PHP berbasis web gratis dan open-source yang khusus dibuat untuk mengelola server database MySQL / MariaDB melalui browser web. Ini menyediakan antarmuka grafis yang intuitif dan mendukung berbagai fitur umum untuk tugas administrasi database. Untuk menginstal PhpMyAdmin caranya ketikkan:

sudo apt install phpmyadmin

Selama instalasi paket PhpPmyAdmin pada LEMP stack, sobat akan diminta untuk mengkonfigurasi beberapa aspek dari paket PhpMyAdmin. Pertama, akan diminta untuk memilih server web default untuk menjalankannya. Tekan Esc paga tampilan gambar berikut karena NGINX tidak ada dalam daftar yang disediakan.

Konfigurasi PHPMyADmin

Selanjutnya, PhpMyAdmin membutuhkan database untuk digunakan. Pada prompt konfigurasi selanjutnya sebagaimana gambar di bawah ini, pilih Yes untuk mengkonfigurasi database untuk PhpMyAdmin dengan paket dbconfig-common.

phpmyadmin-lemp-stack

Pada prompt berikutnya, sobat perlu memberikan kata sandi atau password untuk PhpMyAdmin untuk mendaftar dengan database MariaDB. Masukkan kata sandi yang aman dan tekan Enter.

PHPMyadmin Password

Konfigurasi Nginx Agar Menjalankan PhpMyAdmin

Untuk mengaktifkan NGINX dapat melayani PhpMyAdmin yang terletak di /usr/share/phpmyadmin, buat symlink untuk direktori ini di bawah root dokumen, kemudian atur hak akses dan kepemilikan yang benar pada direktori PHPMyAdmin, lakukan dengan perintah sebagai berikut.

sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin
sudo chmod 775 -R /usr/share/phpmyadmin/
sudo chown root:www-data -R /usr/share/phpmyadmin/

Selain itu, pastikan bahwa file index dalam konfigurasi blok server default (/etc/nginx/sites-available/default) yang meliputi file termasuk index.php seperti yang ditunjukkan pada gambar berikut.

index php

Selanjutnya, restart layanan Nginx sekali lagi untuk menerapkan perubahan di atas. Lalu akses PhpMyAdmin dari browser menggunakan alamat IP dan slash phpmyadmin.

sudo systemctl restart nginx

Hasilnya PhpMyAdmin:

phpmyadmin-nginx

Review LEMP Stack

Pengaturan LEMP stack sekarang selesai dan Anda dapat mulai membangun aplikasi web atau cukup testing dengan layanan Nginx dan MariaDB yang baru saja sobat instal. Ini banyak digunakan dan mendapatkan lebih banyak pengetahuan di dalamnya sangat disarankan untuk administrator sistem.

LEMP Stack atau tumpukan perangkat lunak LEMP adalah sekelompok perangkat lunak yang dapat digunakan untuk melayani halaman web dinamis dan aplikasi web. Nama “LEMP” adalah akronim yang menjelaskan sistem operasi Linux, dengan server web (E)Nginx. Data backend disimpan dalam database MariaDB dan pemrosesan dinamis ditangani oleh PHP.