Cara install LEMP di Ubuntu 16.04

Panduan cara install Nginx, MariaDB 10, PHP 7 (LEMP stack) di Linux Ubuntu 16.04 LTS Xenial Xerus, jika versi ini bukan yang Anda gunakan silahkan pilih tutorial lainnya di bawah ini:

Langkah 1 – Install MariaDB

Diawali dengan instalasi MariaDB

apt update -y && apt upgrade -y
apt install mariadb-server mariadb-client -y
mysql_secure_installation

Saat ada pertanyaan untuk password root MySQL tekan Enter saja, selanjutnya ikuti seperti dibawah ini:

Enter current password for root (enter for none): Tekan Enter
Set root password? [Y/n] y (kemudian ketik password baru)
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

Pastikan MariaDB auto start saat mesin direstart

systemctl enable mariadb

Langkah 2 – Install PHP

Tambahkan repo PPA ondrej, agar kita dapat menginstall PHP versi terbaru (7.x)

apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update -y

Sekarang install PHP 7.2

apt install php7.2-mysql php7.2-fpm php7.2-common php7.2-soap php7.2-json php7.2-xml php7.2-cli php7.2-mbstring php7.2-gd php7.2-curl php7.2-opcache php7.2-readline php7.2-curl php7.2 -y

Kemudian

systemctl start php7.2-fpm
systemctl enable php7.2-fpm

Langkah 3 – Install Nginx

Instalasi terakhir yaitu Nginx web server, eksekusi perintah berikut

apt install nginx
systemctl start nginx
systemctl enable nginx

Langkah 4 – Konfigurasi Nginx – PHP-FPM

Edit konfigurasi Nginx virtual host

nano /etc/nginx/sites-available/default

Hapus semua konten yang ada di dalamnya ganti dengan konfigurasi berikut dan ubah idnetter.com dengan nama domain Anda

server {
	listen 80;
	listen [::]:80;
	server_name idnetter.com www.idnetter.com;

	location /error/ {
	   alias   /usr/share/nginx/html/errors/;
	}

	root /var/www/html/;
	index index.htm index.html index.php;

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

	access_log /var/log/nginx/access_log;
	access_log off;
	error_log /var/log/nginx/error_log error;

	error_page 403 = 404;
	location ~ /\. { access_log off; log_not_found off; deny all; }
	location ~ ~$ { access_log off; log_not_found off; deny all; }

	location = /robots.txt { access_log off; log_not_found off; }
	location = /favicon.ico { access_log off; log_not_found off; }

	gzip on;
	gzip_comp_level    9;
	gzip_min_length    256;
	gzip_proxied       any;
	gzip_vary          on;
	gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon image/png image/gif image/jpeg text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/xml
	text/vtt text/x-component text/x-cross-domain-policy;

	location ~* \.(jpg|jpeg|gif|css|png|js|ico|html)$ { access_log off; expires max; }
	location ~* \.(woff|svg)$ { access_log off; log_not_found off; expires 30d; }
	location ~* \.(js)$ { access_log off; log_not_found off; expires 7d; add_header Cache-Control "public, no-transform"; }

	location ~ \.php?$ {
	try_files $uri = 404;
	include fastcgi_params;
	fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
	fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
	fastcgi_intercept_errors on;
	fastcgi_split_path_info ^(.+\.php)(.*)$;
	fastcgi_hide_header X-Powered-By;
	}
}

Simpan, Ctrl+O > Enter > Ctrl+X

Selesai, selamat mencoba kawan.

Add a comment