LEMP Stack yang terdiri dari Linux ,ENginX / Nginx, MariaDB atau MySQL dan PHP merupakan sekumpulan perangkat lunak yang berfungsi untuk membangun sebuah Web Server di Linux.
Pertama, kita membutuhkan web server dengan cara menginstall Nginx sebagai web server yang modern dan efisien.
sudo apt update sudo install nginx
Apabila proses instalansi telah berhasil, silahkan untuk url localhost pada browser anda dan akan muncul halaman seperti di bawah ini dan menandakan bahwa nginx telah berhasil terinstall di sistem.
Disini anda bebas untuk menginstall mariaDB atau MySQL. Berikut kita contohkan dengan MariaDB
sudo apt install mariadb-server
Cek versi MariaDB yang terinstall.
Catatan : meskipun paket yang kita install adalah MariaDB, tetapi tetap saja binary yang kita panggil adalah mysql.
mysql -V
Output:
mysql Ver 15.1 Distrib 10.3.13-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
Gunakan perintah mysql_secure_installation yang nantinya akan menanyakan kepada anda apakah ingin mengganti sebagian pengaturan yang diinginkan.
sudo mysql_secure_installation
Baca setiap pertanyaan dan jawab dengan menekan tombol y jika setuju dan n jika tidak setuju. Anda dapat menggunakan contoh seperti berikut ini
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY! Enter current password for root (enter for none): [isi password untuk root] ... ... Change the root password? [Y/n] n ... ... 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 ... ... All done! If you've completed all of the above steps, your MariaDB installation should now be secure. Thanks for using MariaDB!
jika tidak ada error berarti mysql telah sukses terpasang, namun anda harus membuat user baru yang nonroot untuk MySQL.
Buatlah User Baru Non Root Untuk MariaDB/MySql
Login Mysql dengan sudo
sudo mysql
Buat user baru
CREATE USER 'usernamebaru'@'localhost' IDENTIFIED BY 'passwordbaru'; GRANT ALL PRIVILEGES ON * . * TO 'usernamebaru'@'localhost';
Ganti usernamebaru dan passwordbaru sesuai yang anda inginkan.
Lalu ketik perintah exit dan tekan enter.
Lakukan install PHP dengan menggunakan repo resmi dari Ubuntu.
sudo apt install php php-fpm php-mysql php-mbstring php-gd
Jika PHP sudah terinstall, lakukan konfigurasi nginx untuk mem-bypass request file *.php ke pada php-fpm daemon untuk diproses lebih lanjut.
Periksa Versi PHP
Cek terlebih dahulu versi PHP berapa yang terinstall, dengan mengetikkan perintah berikut
php --version
Jika yang terinstall versi 7.3.x ,maka kita akan gunakan untuk nginx adalah php7.3-fpm. Jika yang terinstall versi 7.2.x ,maka yang akan kita gunakan adalah php7.2-fpm.
Edit File /etc/nginx/sites-available/default
Anda dapat mengeditnya dengan menggunakan text editor seperti vim, nano, atau yang berbasis GUI.
Berikut contoh menggunakan vim
sudo vim /etc/nginx/sites-available/default
Setelah itu, cari blok kode berikut:
location / { # First attempt to serve request as file, then # as directory, then fall back to displaying a 404. try_files $uri $uri/ =404; }
Tambahkan blok kode ini di bawahnya.
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.3-fpm.sock; }
Selanjutnya akan muncul tampilan akhir sebagai berikut:
Silahkan untuk Save hasil editannya dan lakukan restart nginx dengan perintah berikut:
sudo systemctl restart nginx
Jika tidak ada error, seharusnya nginx kita sudah terintegrasi dengan php-fpm.
Secara default, nginx akan men-serve lokasi direktori /var/www/html. sebagaimana terdefinisikan di file /etc/nginx/sites-available/default yang telah diedit bahwa root berada di direktori /var/www/html
Untuk testing, kita akan buat file dengan nama info.php. Sebagai contoh kita gunakan vim.
cd /var/www/html
vim info.php
Selanjutnya tuliskan script sederhana berikut:
<?php
phpinfo();
Save file info.php dan buka localhost/info.php di browser dan akan muncul tampilan seperti dibawah ini yang menandakan Web server yang di install telah bekerja.
cPanel & WHM juga menawarkan skrip bawaan yang memaksimalkan keamanan partisi /tmp. Hal ini dilakukan…
berikut adalah cara mengatasi error ImunifyAV has not detected any compatible hosting panel as well…
CentOS 7 tidak akan mendapatkan pembaruan apa pun setelah Juni 2024. Selain itu, mirrorlist.centos.org tidak…
DNS di server cyberpanel tidak mau bekerja, di cek pada error log keluar pesan seperti…
saat upgrade cyberpanel, keluar pesan error seperti berikut: django.db.utils.OperationalError: (1045, "Access denied for user 'cyberpanel'@'localhost'…
Untuk melakukan restart cyberpanel lewat SSH silahkan jalankan perintah berikut: systemctl restart lscpd