LEMP stack adalah singkatan dari Linux, Nginx, MariaDB, dan PHP stack dan banyak digunakan untuk hosting situs web/blog.
Di sini, kita akan melihat cara menginstal LEMP Stack di Ubuntu 18.04 dengan dukungan PHP (via PHP-FPM) dan dukungan database (MariaDB).
Instal LEMP Stack
Instal Linux
Berikut adalah tutorial tentang Langkah demi Langkah instalasi Ubuntu 18.04 dan Upgrade Ubuntu 16.04 &Ubuntu 17.10 ke Ubuntu 18.04.
Lanjutkan ke instalasi EMP (Nginx versi 1.17.2, PHP versi 7.2, MariaDB versi 10.1.40) di Ubuntu 18.04.
Instal Nginx
Nginx adalah server web HTTP gratis, open-source, berkinerja tinggi dan dikenal dengan stabilitas, konfigurasi sederhana, dan konsumsi sumber daya yang rendah.
Perbarui indeks repositori.
sudo apt update
Instal paket di bawah ini.
sudo apt install -y wget gnupg2 ca-certificates
Unduh kunci penandatanganan repositori Nginx dari situs web resmi.
wget http://nginx.org/keys/nginx_signing.key
Tambahkan kunci publik Nginx ke dalam sistem.
sudo apt-key add nginx_signing.key
Tambahkan repositori Nginx ke sistem Anda.
echo "deb [arch=amd64] http://nginx.org/packages/mainline/ubuntu bionic nginx" | sudo tee /etc/apt/sources.list.d/nginx.list
Instal paket Nginx menggunakan perintah berikut.
sudo apt update sudo apt install -y nginx
Mulai layanan Nginx setelah instalasi.
sudo systemctl start nginx
Buka browser web dan kunjungi URL di bawah ini.
http://your-ip-add-ressAnda akan melihat halaman default Nginx, dan ini mengonfirmasi Anda bahwa Nginx berhasil diinstal di server.

Akar dokumen default Nginx di Ubuntu 18.04 adalah /usr/share/nginx/html/ dan file konfigurasi ditemukan di bawah direktori /etc/nginx/.
Mulai otomatis Nginx saat memulai sistem.
sudo systemctl enable nginx
Instal Server MariaDB
Instal server MariaDB dengan mengeluarkan perintah berikut.
Secara default, Ubuntu 18.04 mengirimkan MariaDB v10.1 yang sedikit lebih tua dari versi yang tersedia di repositori resmi MariaDB (v10.4). Anda dapat menginstal MariaDB v10.4 dengan mengikuti langkah-langkah di URL di bawah ini.Cara Menginstal MariaDB Di Ubuntu 18.04
sudo apt install -y mariadb-server mariadb-client
Selanjutnya, buat server MariaDB aman dengan menggunakan perintah mysql_secure_installation.
mysql_secure_installation
Keluaran:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! In order to log into MariaDB to secure it, we'll need the current password for the root user. If you've just installed MariaDB, and you haven't set the root password yet, the password will be blank, so you should just press enter here. Enter current password for root (enter for none): << No root password. Just press Enter OK, successfully used password, moving on... Setting the root password ensures that nobody can log into the MariaDB root user without the proper authorisation. Set root password? [Y/n] Y << Set MariaDB root password New password: << Enter root password Re-enter new password: << Re-enter root password Password updated successfully! Reloading privilege tables.. ... Success! By default, a MariaDB installation has an anonymous user, allowing anyone to log into MariaDB without having to have a user account created for them. This is intended only for testing, and to make the installation go a bit smoother. You should remove them before moving into a production environment. Remove anonymous users? [Y/n] Y << Remove anonymous users ... Success! Normally, root should only be allowed to connect from 'localhost'. This ensures that someone cannot guess at the root password from the network. Disallow root login remotely? [Y/n] Y << Disallow root login remotely ... Success! By default, MariaDB comes with a database named 'test' that anyone can access. This is also intended only for testing, and should be removed before moving into a production environment. Remove test database and access to it? [Y/n] Y << Remove test database - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reloading the privilege tables will ensure that all changes made so far will take effect immediately. Reload privilege tables now? [Y/n] Y << Reload privilege ... Success! Cleaning up... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
Instal PHP-FPM
Instal PHP melalui PHP-FPM (PHP-FastCGI Process Manager), sebuah alternatif implementasi PHP FastCGI. Ini menyediakan fitur tambahan yang berguna untuk situs berukuran lebih besar.
Secara default, Ubuntu 18.04 mengirimkan PHP-FPM v7.2. Anda juga dapat menginstal PHP-FPM v7.3 dengan mengikuti langkah-langkah di URL di bawah ini.Cara Menginstal PHP 7.3 Di Ubuntu 18.04
Instal php-fpm dengan menggunakan perintah berikut.
sudo apt install -y php-fpm php-mysql php-cli
PHP-FPM mendengarkan pada soket /run/php/php7.2-fpm.sock secara default.
Untuk membuat PHP-FPM menggunakan koneksi TCP, edit file di bawah ini.
sudo nano /etc/php/7.2/fpm/pool.d/www.conf
Kemudian, ubah parameter dengar.
DARI:
listen = /run/php/php7.2-fpm.sock
KEPADA:
listen = 127.0.0.1:9000
Mulai ulang proses PHP-FPM dan aktifkan untuk memulai secara otomatis saat boot sistem.
sudo systemctl restart php7.2-fpm sudo systemctl enable php7.2-fpm
Uji Tumpukan LEMP
Mari kita buat host virtual berbasis nama di server Nginx untuk detail berikut.
Nama Domain: web.itzgeek.local
Akar Dokumen: /usr/share/nginx/html/web.itzgeek.local
Pertama, buat file konfigurasi host virtual untuk domain kita di bawah direktori /etc/nginx/conf.d/.
sudo nano /etc/nginx/conf.d/web.itzgeek.local.conf
Tambahkan konten berikut.
server { server_name web.itzgeek.local; root /usr/share/nginx/html/web.itzgeek.local; location / { index index.html index.htm index.php; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }
Buat direktori root untuk host virtual kami.
sudo mkdir -p /usr/share/nginx/html/web.itzgeek.local
Untuk menguji dukungan PHP-FPM, tempatkan file PHP ke root dokumen dari host virtual yang dibuat.
echo "<?php phpinfo(); ?>" | sudo tee /usr/share/nginx/html/web.itzgeek.local/index.php
Perbarui izin file.
sudo chown -R www-data:www-data /usr/share/nginx/html/web.itzgeek.local/
Mulai ulang layanan.
sudo systemctl restart nginx sudo systemctl restart php7.2-fpm
Buat entri host untuk domain Anda (web.itzgeek.local) di file /etc/hosts jika lingkungan Anda tidak memiliki server DNS untuk resolusi nama.
nano /etc/hosts
Tambahkan entri host seperti di bawah ini.
192.168.1.10 web.itzgeek.local web
Buka browser web Anda dan ketik nama domain Anda di alamat web.
http://web.itzgeek.localHalamannya akan terlihat seperti di bawah ini:

Dari tangkapan layar di atas, PHP bekerja melalui FPM/FastCGI , seperti yang ditunjukkan pada baris Server API.
Jika Anda menggulir halaman lebih jauh ke bawah, Anda akan melihat dukungan dari MariaDB.

Kesimpulan
Itu saja. Saya harap Anda telah belajar cara menginstal LEMP stack di Ubuntu 18.04. Pertimbangkan untuk menginstal sertifikat SSL Let's Encrypt untuk situs Anda untuk meningkatkan keamanan. Silakan bagikan tanggapan Anda di bagian komentar.