Tutorial : Cara Install WordPress dengan LEMP di Debian 9

Tutorial kali akan membahas Cara Install WordPress dengan LEMP di Debian.

Sebelum melanjutkan tutorial mari kita kenalan dulu bagi yang belum kenal apa sih LEMP. LEMP adalah singkatan dari Linux, NginX (Engin X), MariaDBPHP-FPM.

Nginx ini merupakan alternatif terbaik untuk menggantikan Apache apabila anda ingin membangun sebuah web server.

Cara Install WordPress dengan LEMP di Debian 9
Cara Install WordPress dengan LEMP di Debian 9
Gambar : https://dribbble.com/shots/3670274-Debian

Berikut ini langkah demi langkah Install WordPress dengan LEMP di Debian 9.

Install Nginx

Untuk langkah pertama Anda bisa meng install nginx terlebih dahulu. Berikut langkah yang bisa Anda gunakan untuk melakukan proses instalasi nginx.

sudo apt-get update
sudo apt-get install nginx

Perintah yang bisa digunakan dalam mengoperasikan web server nginx adalah sebagai berikut

sudo systemctl stop nginx.service 
sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Install dan Konfigurasi MariaDB

WordPress juga membutuhkan Database dan Database MariaDB adalah plihan tempat yang tepat untuk digunakan. Untuk menginstalnya jalankan perintah di bawah ini.

sudo apt-get install mariadb-server mariadb-client

Setelah itu, jalankan perintah di bawah ini untuk mengamankan Database MariaDB dengan membuat kata sandi root dan menonaktifkan akses root jarak jauh (remote).

sudo mysql_secure_installation

Isi pertanyaan yang muncul dengan ini:

  1. Enter current password for root (enter for none): tekan Enter
  2. Set root password? [Y/n]: y
  3. New password: isi password sesuai keinginan Anda
  4. Re-enter new password: masukan kembali password diatas
  5. Remove anonymous users? [Y/n] : y
  6. Dissalow root login remotely? [Y/n] : y
  7. Remove test database and access to it? [Y/n]: y
  8. Reload privilege tables now? [Y/n] : y

Lakukan Restart atau hibupkan ulang Database MariaDB

sudo systemctl restart mariadb.service

Perintah yang bisa dilakukan untuk mengoperasikan database

sudo systemctl stop mariadb.service 
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Membuat Database WordPress

Database adalah tempat menyimpan semua pos, halaman, tema, plugin, dll informasi WordPress nantinya.

Langkah 1. Login ke MariaDB menggunakan perintah di bawah ini, lalu tekan tombol Enter.

sudo mysql -u root -p

Langkah 2. Buat Database baru, dan Berikan Hak Istimewa untuk digunakan penggunanya dengan kata sandi

create database wordpress;  
grant all on wordpress.* to 'user'@'localhost' identified by 'Inipassword123';
flush privileges;
exit;

Keterangan :

  1. Nama Database : wordpress
  2. User : user
  3. Password : Inipassword123

Install dan Konfigurasi PHP7.3-FPM

Di tahap ini Anda akan di pandu cara menginstall PHP7.3-FPM termasuk dengan mengkonfigurasinya.

Sebelum melakukan instalasi terlebih dahulu jalankan perintah dibawah ini.

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

Bagian ini lakukan install php7.3 beserta dengan ekstensi pendukungnya juga

sudo apt-get 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

Lakukan konfigurasi pada /etc/php/7.1/fpm/php.ini dengan menjalankan perintah dibawah ini

sudo nano /etc/php/7.3/fpm/php.ini

Berikut ini hal yang perlu Anda modifikasi

file_uploads = On 
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 100M
cgi.fix_pathinfo=0
max_execution_time = 360

Konfigurasi Server Block Nginx

Ini penting di mana Anda perlu mengkonfigurasi domain Anda, bagaimana NGINX harus menangani file PHP.

Pastikan untuk memperbarui nama domain pada baris ke-5

Secara default jalur Anda adalah /var/www/html/, perbarui jika diperlukan untuk menginstal WordPress baru di server yang sama atau jika Anda telah mengubah nama direktori html.

Masukkan perintah di bawah ini dan Tekan ctrl + o untuk menyimpan dan ctrl + x untuk keluar.

sudo nano /etc/nginx/sites-available/domain.id

Silahkan salin script dibawah ini dan ganti domain.id dengan domain yang Anda miliki.

server {
listen 80;
root /var/www/html/wordpress;
index index.php index.html index.htm;
server_name www.domain.id domain.id;
client_max_body_size 100M;

error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location / {
try_files $uri $uri/ /index.php?q=$uri&$args;
}
location ~* \.php$ {
if ($uri !~ "^/uploads/") {
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
}
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
location = /favicon.ico {
log_not_found off;
access_log off;
}
location = /robots.txt {
log_not_found off;
access_log off;
allow all;
}
location ~* .(css|gif|ico|jpeg|jpg|js|png)$ {
expires 30d;
log_not_found off;
}
}

Sebelum menjalankan block server ada baiknya pastikan melakukan pengecekan dengan menjalankan perintah ini

sudo rm /etc/nginx/sites-available/default
sudo rm /etc/nginx/sites-enabled/default
sudo nginx -t

Hal ini bertujuan untuk memastikan konfigurasinya sudah benar apa belumnya.

Untuk mengaktifkan blok server, Anda perlu membuat tautan simbolis antara dua direktori (/etc/nginx/sites-available/dan/etc/nginx/sites-enabled). Tautan simbolis bukan apa-apa, hanya menghubungkan dua folder sehingga konten yang satu muncul di folder lain.

Jalankan perintah ini dengan berurutan

ln -s /etc/nginx/sites-available/domain.id /etc/nginx/sites-enabled/ 
sudo nginx -t 
service nginx restart 
systemctl restart php7.3-fpm.service 
systemctl restart mysql 
apt-get update

Install dan Konfigurasi WordPress

Dengan asumsi, Anda ingin menginstal WordPress di direktori default /var/www/html/, masukkan perintah di bawah ini untuk menginstal file WordPress.

cd /var/www/html/

Setelah Anda menjalankan perintah diatas, Anda akan masuk pada direktori sekarang /var/www/html/

Jalankan perintah dibawah untuk mengunduh WordPress terbaru.

wget https://wordpress.org/latest.tar.gz

Selesai mengunduk lakukan ekstrak file latest.tar.gz dengan menjalankan perintah berikut.

tar -xvzf latest.tar.gz

Selanjutnya mengatur perizinan (permisission) dengan menjalankan perintah di bawah ini.

chown -R www-data:www-data /var/www/html/wordpress 
sudo chmod -R 755 /var/www/html/wordpress

Kunjungi nama domain blog Anda untuk mengatur WordPress.

Berikan kredensial login Database untuk memulai Pengaturan WordPress sesuai dengan yang telah dibuat di atas pada langkah 2.

Selanjutnya lakukan pengaturan login pada WordPress sesuai dengan keinginan Anda.

Install Let’s Encrypt SSL Certificate

Tahap trakhir adalah meng install Let’s Encrypt sebagai SSL nya. Kelebihan menggunakan SSL adalah untuk meng-encrypsi data yang terjadi pada situs website Anda.

Berikut ini Adalah proses Install Let’s Encypt yang harus Anda lewati dengan mudah.

sudo add-apt-repository ppa:certbot/certbot 
sudo apt-get update
sudo apt-get install python-certbot-nginx

Certbot menyediakan berbagai cara untuk mendapatkan sertifikat SSL melalui plugin. Plugin Nginx akan mengatur ulang konfigurasi Nginx dan memuat ulang konfigurasi kapan pun diperlukan.

Jalankan perintah dibawah ini untuk menggunakan plugin Certbot :

sudo certbot --nginx -d www.domain.id -d domain.id

-d berfungsi untuk menentukan domain mana yang akan diberikan sertifikat SSL.

Jika perintah di atas berhasil dijalankan Anda akan melihat dan disuruh memilih bagaimana HTTPS untuk domain Anda.

Pemasangan SSL Let’s Encrypt berhasil terinstall pada domain Anda. Coba ada reload link website Anda. Perhatikan indikator situs website Anda telah terpasang atau telah di amankan dengan SSL.

Jika Anda menguji server Anda menggunakan SSL Labs Server Test, Anda akan melihat skor website Anda.

Note : Semua domain yang ada pada tutorial ini di ganti dengan domain website Anda.

Sampai disini Tutorial Install SSL Let’s Encrypt Nginx di Ubuntu. Jika Ada pertanyaan bisa meninggalkan pertanyaannya pada kolom komentar di bawah.