Hosting atau server adalah tempat yang digunakan untuk menyimpan data pada website. Biasanya, data ini dikelola menggunakan control panel. Namun, bagaimana jika kamu memutuskan untuk menggunakan cara yang lebih manual dengan menggunakan stacks seperti LEMP Stack? Simak artikel berikut untuk mempelajari cara install LEMP Stack di server Ubuntu 18.04.
LEMP Stack
LEMP (Linux, Nginx, MariaDB, PHP) Stack adalah salah satu stack yang diciptakan untuk memenuhi kebutuhan dalam melakukan deployment website ke server tanpa menggunakan control panel. Artinya, tidak ada Graphic User Interface (GUI) yang bisa menampilkan aplikasi untuk mengelola website, melainkan hanya menggunakan command atau perintah LEMP Stack.
Baca Juga: LAMP atau LEMP, Manakah yang Lebih Baik?
Cara Install LEMP Stack di Ubuntu 18.04
Sebelum memulai cara install LEMP Stack di Ubuntu 18.04, kamu perlu mempersiapkan beberapa hal berikut:
- VPS dengan OS Ubuntu 18.04.
- Domain yang sudah diarahkan ke IP VPS.
- Akses ke root sebagai Administrator.
Berikut ini adalah beberapa langkah utama yang akan kita lakukan dalam cara install LEMP Stack di Ubuntu.
- Update Server
- Install Firewall
- Install Nginx Web Server
- Install MariaDB Database Server
- Install PHP 7.2
- Configure PHP.ini
- Setting Nginx Server Block Config
- Testing
Setelah itu, simak penjelasan langkah-langkahnya berikut ini.
Update Server
Login sebagai root ke server, kemudian perbarui server dan reboot.
$ apt-get update -y $ reboot
Instal package yang dibutuhkan.
$ apt-get install perl git nano wget -y
Install Firewall
Firewall yang digunakan dalam instalasi ini adalah Config Security & Firewall (CSF).
$ cd /usr/src $ wget https://download.configserver.com/csf.tgz $ tar -xzf csf.tgz $ cd csf/ $ install.sh
Edit csf.conf lalu ubah value make TESTING menjadi 0.
$ nano /etc/csf/csf.conf make TESTING=’0’
Simpan dan keluar. Setelah itu, muat ulang CSF dengan perintah di bawah ini.
$ csf -r
Install Nginx Web Server
Mengingat stack yang digunakan adalah LEMP Stack, maka kita menggunakan Nginx sebagai web server.
$ apt-get install nginx -y
Mulai dan aktifkan on-boot untuk layanan Nginx.
$ systemctl enable nginx $ systemctl start nginx
Cek status Nginx, apakah sudah aktif atau belum.
$ systemctl status nginx
-
nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: en Active: active (running) since Sat 2020-09-26 16:34:50 UTC; 54min ago Docs: man:nginx(8) Main PID: 2701 (nginx) Tasks: 2 (limit: 1152) CGroup: /system.slice/nginx.service ├─2701 nginx: master process /usr/sbin/nginx -g daemon on; master_pro └─2704 nginx: worker process
Install MariaDB Database User
Saat ini, MariaDB adalah sistem pengelola database yang paling up-to-date dan cukup kompatibel untuk kamu gunakan. Ikuti perintah berikut untuk menginstal MariaDB.
$ apt-get install mariadb-server mariadb-client -y
Mulai dan aktifkan on-boot untuk layanan MariaDB dan lakukan secure installation dengan cara berikut.
$ systemctl enable mariadb $ systemctl start mariadb $ mysql_secure_installation Enter current password for root (enter for none): 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 New password: Re-enter new password: Password updated successfully! Reloading privilege tables.. ... Success! Remove anonymous users? [Y/n] y ... Success! Disallow root login remotely? [Y/n] y ... Success! Remove test database and access to it? [Y/n] y - Dropping test database... ... Success! - Removing privileges on test database... ... Success! Reload privilege tables now? [Y/n] y ... 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!
Kamu bisa langsung menekan Enter pada current password for root, kemudian pilih Y pada set root password dan terus pilih Y hingga proses pengamanan selesai. Setelah itu, cek apakah MariaDB sudah aktif atau belum.
$ systemctl status mariadb
-
mariadb.service - MariaDB 10.1.44 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: Active: active (running) since Sat 2020-09-26 16:39:36 UTC; 51min ago Docs: man:mysqld(8) https://mariadb.com/kb/en/library/systemd/ Main PID: 3929 (mysqld) Status: "Taking your SQL requests now..." Tasks: 27 (limit: 1152) CGroup: /system.slice/mariadb.service └─3929 /usr/sbin/mysqld
Install PHP 7.2
Kami menggunakan PHP versi 7.2 untuk cara install LEMP Stack di Ubuntu 18.04 ini. Oleh karena itu, kamu perlu menginstal PHP 7.2 serta beberapa ekstensi yang dibutuhkan dengan cara berikut.
$ apt-get install php7.2 php7.2-fpm php7.2-mysql php-common php7.2-cli php7.2-common php7.2-json php7.2-opcache php7.2-readline php7.2-mbstring php7.2-xml php7.2-gd php7.2-curl -y
Mulai dan aktifkan on-boot untuk PHP 7.2-FPM.
$ systemctl enable php7.2-fpm $ systemctl start php7.2-fpm
Cek apakah status php7.2-fpm sudah aktif atau belum:
$ systemctl status php7.2-fpm
-
php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor prese Active: active (running) since Sat 2020-09-26 16:58:05 UTC; 33min ago Docs: man:php-fpm7.2(8) Main PID: 14983 (php-fpm7.2) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/se Tasks: 3 (limit: 1152) CGroup: /system.slice/php7.2-fpm.service ├─14983 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf) ├─15000 php-fpm: pool www └─15001 php-fpm: pool www
Configure PHP.ini
Buka file php.ini dan php-fpm configuration. Ubah konfigurasi sesuai di bawah ini.
$ nano /etc/php/7.2/fpm/php.ini ;cgi.fix_pathinfo=1 menjadi cgi.fix_pathinfo=0 $ nano /etc/php/7.2/cli/php.ini ;cgi.fix_pathinfo=1 menjadi cgi.fix_pathinfo=0
Jika sudah, simpan lalu keluar.
Setting Nginx Server Block Config
Nginx server block sama seperti virtual host di Apache, path-nya ada pada “/etc/nginx/sites-available/”. Buat file baru dengan nama domain yang kamu gunakan, misalnya dalam artikel ini kami menggunakan lempubuntu.dewiweb.net.
$ nano /etc/nginx/sites-available/lempubuntu.dewiweb.net
server { listen 80; listen [::]:80; server_name lempubuntu.dewiweb.net; root /var/www/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/php7.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; } }
Arahkan hasil konfigurasi tersebut ke sites-enabled dengan perintah berikut. Ingat, ubah nama domainnya sesuai dengan nama domainmu.
$ ln -s /etc/nginx/sites-available/lempubuntu.dewiweb.net /etc/nginx/sites-enabled/lempubuntu.dewiweb.net
Cek konfigurasi yang sudah kamu lakukan, apakah ada syntax error atau tidak:
$ nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Muat ulang atau reload Nginx dengan:
$ systemctl reload nginx
Testing
Gunakan file info.php pada path directory yang kamu atur di Nginx server block sebelumnya.
$ nano /var/www/html/info.php
Masukkan script di bawah ini:
<?php phpinfo(); ?>
Simpan dan keluar, lalu akses domainmu. Jika tampilannya sudah seperti pada gambar berikut, berarti kamu telah berhasil melakukan cara install LEMP Stack di Ubuntu 18.04.
Baca Juga: Cara Install LEMP Stack di CentOS 7
Simpulan
Usai meng-install LEMP Stack, kamu bisa menginstal aplikasi website lainnya, seperti WordPress, Joomla, Drupal, atau CMS pilihanmu. Tak perlu khawatir, instalasi aplikasi website selanjutnya bisa langsung dilakukan melalui LEMP Stack, simak caranya dari artikel “Cara Install WordPress dengan LEMP Stack“.
Demikian artikel tentang cara install LAMP Stack di Ubuntu 18.04 ini, jangan sungkan untuk meninggalkan ide-ide topik yang ingin kamu baca di blog Dewaweb, ya! Semoga kamu berhasil mencoba, Sahabat Dewaweb. Salam sukses online!