Cara Instal LEMP Stack (Nginx, MySQL, PHP) di Ubuntu
Bagi teman-teman yang merupakan web developer, pasti sudah tidak asing dengan istilah LEMP. LEMP adalah singkatan dari Linux, NGINX, MySQL dan PHP. Jadi LEMP stack adalah seperangkat aplikasi yang digunakan secara bersamaan untuk menjalankan web server pada sistem operasi Linux. LEMP sendiri bagi saya sangat bermanfaat dalam development aplikasi PHP. Pada operasi sistem Windows, biasa kita kenal pada aplikasi yang bernama XAMPP yang mana pada aplikasi tersebut sudah mencantumkan Apache sebagai web server, MariaDB / MySQL sebagai database, dan PHP sebagai bahasa pemrograman.
Pada tutorial kali ini saya berbagi tutorial tentang cara instal LEMP Stack di Linux yang mana saya menggunakan Ubuntu 18.04 dan PHP 7.3, sedangkan untuk versi lain bisa menyesuaikan.
Langkah-langkah yang akan kita lakukan dalam instalasi LEMP (Nginx, MySQL, PHP) di Ubuntu yaitu:
Langsung saja kita lakukan cara instalasi LEMP di Ubuntu 18.04 dengan PHP versi 7.3.
Instalasi Nginx
Instalasi PHP 7.3
Instalasi MySQL
Instalasi phpMyAdmin
Konfigurasi Nginx
Backup terlebih dahulu konfigurasi bawaan Nginx kita dengan cara berikut:
Kemudian, uncomment konfigurasi PHP-nya sehingga menjadi seperti ini:
Kemudian tambahkan kode konfigurasi berikut:
Sehingga konfigurasi akhirnya akan seperti ini:
Konfigurasi MySQL
Konfigurasi MySQL ini akan kita gunakan untuk mengakses phpMyAdmin yang telah kita instal tadi.
Baik, setelah semua telah terkonfigurasi, masukkan perintah berikut:
Demikian adalah cara instal LEMP Stack di Ubuntu. Semoga tulisan ini bermanfaat bagi teman-teman developer yang sedang mencari artikel untuk menginstal LEMP.
*Diperbaharui pada 13 Maret 2020
Pada tutorial kali ini saya berbagi tutorial tentang cara instal LEMP Stack di Linux yang mana saya menggunakan Ubuntu 18.04 dan PHP 7.3, sedangkan untuk versi lain bisa menyesuaikan.
Langkah-langkah yang akan kita lakukan dalam instalasi LEMP (Nginx, MySQL, PHP) di Ubuntu yaitu:
Langsung saja kita lakukan cara instalasi LEMP di Ubuntu 18.04 dengan PHP versi 7.3.
Instalasi Nginx
sudo apt install nginx
Instalasi PHP 7.3
sudo add-apt-repository ppa:ondrej/php
Install beberapa php-extension dengan command berikut:sudo apt install php7.3-fpm php7.3-cli php7.3-mysql php7.3-gd php7.3-imagick php7.3-recode php7.3-tidy php7.3-xmlrpc
Instalasi MySQL
sudo apt install mysql-server mysql-client
Instalasi phpMyAdmin
wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip -O phpmyadmin.zip
unzip phpmyadmin.zip
sudo mv phpMyAdmin-*-all-languages /usr/share/phpmyadmin
sudo chmod -R 0755 /usr/share/phpmyadmin
sudo mkdir /usr/share/phpmyadmin/tmp/
sudo chown -R www-data:www-data /usr/share/phpmyadmin/tmp/
sudo ln -s /usr/share/phpmyadmin /var/www/html
Konfigurasi Nginx
Backup terlebih dahulu konfigurasi bawaan Nginx kita dengan cara berikut:
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bakKemudian kita buka file konfigurasi dari Nginx kita:
sudo nano /etc/nginx/sites-available/defaultTambahkan index.php pada baris berikut:
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
Sehingga menjadi:# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html index.php;
Kemudian, uncomment konfigurasi PHP-nya sehingga menjadi seperti ini:
# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;
# # With php-cgi (or other tcp sockets):
# fastcgi_pass 127.0.0.1:9000;
}
Karena pada tulisan ini kita menggunakan PHP 7.3, maka gantifastcgi_pass unix:/var/run/php/php7.0-fpm.sock;menjadi
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
Kemudian tambahkan kode konfigurasi berikut:
location /phpmyadmin { index index.php index.html index.htm; root /usr/share; }
Sehingga konfigurasi akhirnya akan seperti ini:
server {
listen 80 default_server;
listen [::]:80 default_server;
# include snippets/snakeoil.conf;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html index.php;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
location /phpmyadmin {
index index.php index.html index.htm;
root /usr/share;
}
# pass PHP scripts to FastCGI server
#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
# With php-fpm (or other unix sockets):
fastcgi_pass unix:/var/run/php/php7.3-fpm.sock;
# With php-cgi (or other tcp sockets):
##fastcgi_pass 127.0.0.1:9000;
}
}
Konfigurasi MySQL
Konfigurasi MySQL ini akan kita gunakan untuk mengakses phpMyAdmin yang telah kita instal tadi.
sudo mysql
CREATE USER 'usernamekamu'@'localhost' IDENTIFIED BY 'passwordkamu';
GRANT ALL PRIVILEGES ON * . * TO 'usernamekamu'@'localhost';
FLUSH PRIVILEGES;
Baik, setelah semua telah terkonfigurasi, masukkan perintah berikut:
sudo service nginx restart; sudo service php7.3-fpm start; sudo service mysql start;
Demikian adalah cara instal LEMP Stack di Ubuntu. Semoga tulisan ini bermanfaat bagi teman-teman developer yang sedang mencari artikel untuk menginstal LEMP.
*Diperbaharui pada 13 Maret 2020