Instal WordPress dengan LEMP (Linux, Nginx, MySQL, dan PHP-FPM) di Almalinux 9

Pengantar

LEMP adalah singkatan dari Linux, Nginx, MySQL, dan PHP-FPM. LEMP stack adalah salah satu pilihan populer untuk situs web WordPress karena kinerja dan skalabilitasnya. Di artikel ini, kita akan memandu Anda melalui langkah-langkah untuk menginstal WordPress menggunakan LEMP stack di AlmaLinux 9

Persyaratan

  • Operating System : Almalinux 9
  • Web Server : Nginx V1.20
  • PHP FPM : V8.2
  • Database : MySQL V8.0
  • Wordpress : V6.8.1

Update Paket Repositori

Sebelum memulai, pastikan bahwa sistem Anda sudah diperbarui dengan menjalankan perintah berikut:

sudo dnf update -y

Instal Nginx Web Server

Nginx akan berfungsi sebagai server web untuk meng-handle permintaan HTTP.

  1. Instal Nginx menggunakan perintah
    sudo dnf install nginx -y
    
  2. Setelah instalasi selesai, aktifkan dan mulai layanan Nginx
    sudo systemctl enable nginx
    sudo systemctl start nginx
    
  3. Cek status layanan Nginx
    sudo systemctl status nginx
  4. Verifikasi bahwa Nginx berjalan dengan baik dengan mengakses IP server Anda di browser. Anda seharusnya melihat halaman default Nginx.

Instal Database (MySQL)

  1. Install Mysql:
    dnf install mysql mysql-server
    Hasil :
  2. Mulai layanan MySQL dan aktifkan agar layanan tersebut otomatis berjalan saat boot dengan menjalankan perintah berikut.
    systemctl enable --now mysqld
    systemctl start mysqld
  3. Cek status Mysql dengan perintah berikut.
    systemctl status mysqld

    Hasil : 

  4.  Anda perlu mengamankan instalasi MySQL Anda dengan menjalankan perintah berikut
    mysql_secure_installation

    Ikuti instruksi:

    • Set root password (Y)

    • Tingkatan Password (2)
    • Hapus anonymous users (Y)

    • Nonaktifkan remote login (Y)

    • Hapus test database (Y) 

    • Reload privilege tables (Y)

  5. Setelah terkoneksi, Anda dapat menghubungkan ke MySQL dan meninjau basis data yang ada di server database Anda dengan menggunakan perintah berikut
    mysql -e "SHOW DATABASES;" -p

Buat Database

  1. Login MySQL kemudian masukkan Password MySQL
    mysql -p
  2. Membuat database untuk WordPress

    Buat Database  baru, dengan perintah :
    Ganti nama_database dengan nama database yang kamu inginkan:

    CREATE DATABASE nama_database;
  3. Buat user baru dengan perintah :
    Ganti nama_user dengan nama user yang kamu inginkan, dan password_kamu dengan password yang kuat
    CREATE USER 'nama_user'@'localhost' IDENTIFIED BY 'password_kamu';
  4. Berikan hak akses ke user tersebut
    Berikan semua hak akses ke user hanya untuk database yang sudah dibuat:

    GRANT ALL PRIVILEGES ON nama_database.* TO 'nama_user'@'localhost';
  5. Terapkan perubahan hak akses
    Jalankan perintah ini agar perubahan hak akses segera berlaku;
    FLUSH PRIVILEGES;
  6. Keluar dari sql dengan perintah :

    EXIT;

Install PHP 8.2

Untuk menginstal PHP 8.2 di AlmaLinux 9, pertama-tama kita perlu menambahkan repositori EPEL dan REMI. Kedua repositori ini menyediakan paket tambahan, termasuk versi PHP terbaru yang tidak ada di repositori bawaan AlmaLinux.

  1. Repositori EPEL (Extra Packages for Enterprise Linux) menawarkan paket-paket tambahan untuk CentOS dan distribusi turunannya seperti AlmaLinux. Untuk menginstal repositori EPEL, gunakan perintah berikut:
    dnf install epel-release 
  2. Instal repositori REMI
    Untuk memulai, kita perlu menginstal repositori REMI. Jalankan perintah berikut:

    dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
    
  3. Aktifkan repositori PHP 8.2
    Setelah repositori REMI terinstal, aktifkan repositori PHP 8.2 untuk mengakses versi terbaru PHP:
    dnf module enable php:remi-8.2
    
  4.  Instal PHP 8.2 dan modul-modul terkait
    Sekarang, kita bisa menginstal PHP 8.2 beserta beberapa modul yang dibutuhkan. Gunakan perintah berikut:
    dnf install php82-php-fpm php82-php-cli php82-php-curl php82-php-mysqlnd php82-php-gd php82-php-opcache php82-php-zip php82-php-intl php82-php-common php82-php-bcmath php82-php-imagick php82-php-xmlrpc php82-php-json php82-php-readline php82-php-memcached php82-php-redis php82-php-mbstring php82-php-apcu php82-php-xml php82-php-dom php82-php-redis php82-php-memcached php82-php-memcache
    
  5. Buat symbolic link untuk PHP 8.2:
    Untuk mempermudah penggunaan PHP 8.2, buat symbolic link agar perintah php mengarah ke versi 8.2:

    ln -s /usr/bin/php82 /usr/bin/php
    
  6.  Sesuaikan konfigurasi pool PHP-FPM:
    Buka file konfigurasi untuk PHP-FPM dan sesuaikan pengaturan sesuai kebutuhan. Gunakan editor teks seperti nano:
    nano /etc/opt/remi/php82/php-fpm.d/www.conf
    
    Sesuaikan beberapa baris berikut dengan konfigurasi yang sesuai:
    user = nginx
    group = nginx
    listen.owner = nginx
    listen.group = nginx
    
  7. Berikan izin untuk mengakses socket ini, Anda perlu mengubah kepemilikan dan izin file socket tersebut. Anda dapat menggunakan perintah berikut:
    sudo chown nginx:nginx /var/opt/remi/php82/run/php-fpm/www.sock
    sudo chmod 660 /var/opt/remi/php82/run/php-fpm/www.sock
    
  8.  Aktifkan dan jalankan PHP-FPM:
    systemctl enable php82-php-fpm
    systemctl start php82-php-fpm
    systemctl status php82-php-fpm
    
     

Konfigurasi Nginx

  1. Membuat directory untuk document root:
    mkdir /var/www/namadomain.my.id
  2. Beri Hak Akses File

    Ganti pemilik file dan direktori menjadi nginx agar Nginx bisa mengakses file WordPress

    sudo chown -R nginx:nginx /var/www/namadomain.my.id
    sudo chmod -R 755 /var/www/namadomain.my.id
    
  3. Membuat file konfigurasi server block untuk domain kita:
    nano /etc/nginx/conf.d/namadomain.my.id

    Masukkan konfigurasinya:

    server {
        listen 80;
        server_name www.namadomain.my.id namadomain.my.id;
        root /var/www/namadomain.my.id;
        index index.php;
    
        location / {
          try_files $uri $uri/ /index.php?$args;
        }
    
        location ~ \.php$ {
          try_files $fastcgi_script_name =404;
          include fastcgi_params;
          fastcgi_pass    unix:/var/opt/remi/php82/run/php-fpm/www.sock;
          fastcgi_index   index.php;
          fastcgi_param DOCUMENT_ROOT    $realpath_root;
          fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name; 
        }
    
        access_log /var/log/nginx/namadomain.my.id_access.log;
        error_log /var/log/nginx/namadomain.my.id_error.log;
    }	

Instalasi wordpress

  1. Sekarang kita akan mengunduh WordPress ke server Anda. Jalankan perintah berikut:
    cd /var/www/frantiko.web.id
    wget https://wordpress.org/latest.tar.gz
    Setelah selesai, ekstrak file arsip WordPress:
    tar -xzvf latest.tar.gz
    Pindahkan file dari folder hasil ekstraksi ke dalam document root:
    mv wordpress/* .
    
  2. Siapkan File Konfigurasi Wordpress
    Sekarang,salin file konfigurasi wp-config-sample.php menjadi wp-config.php
    cp wp-config-sample.php wp-config.php
    
  3. Edit file wp-config.php untuk mengonfigurasi database:
    nano wp-config.php
    
  4. Sesuaikan bagian berikut dengan informasi database Anda:
    define( 'DB_NAME', 'wordpress' );
    define( 'DB_USER', 'wordpress_user' );
    define( 'DB_PASSWORD', 'password_anda' );
    define( 'DB_HOST', 'localhost' );
    
    Simpan dan tutup file (CTRL + X, lalu tekan Y dan Enter).

Menyelesaikan Instalasi WordPress di Browser

  1. Akses WordPress melalui Browser
    http://domainanda.my.id


    Ikuti petunjuk instalasi WordPress di layar, termasuk memilih bahasa, memasukkan detail situs (seperti judul dan username admin), dan memasukkan password untuk akun administrator.
  2. Setelah proses instalasi selesai, Anda dapat login ke dasbor WordPress Anda melalui:
    http://domainanda.my.id/wp-admin

Kesimpulan

Dengan mengikuti langkah-langkah di atas, Anda telah berhasil menginstal WordPress di server AlmaLinux 9 menggunakan LEMP Stack (Linux, Nginx, MySQL, PHP). Server siap melayani situs web dengan performa optimal dan aman berkat konfigurasi SSL.

Bagi Anda yang mencari solusi hosting yang andal dan mudah, PlasaWebHost menawarkan layanan hosting berkualitas dengan dukungan teknis yang responsif, ideal untuk kebutuhan WordPress dan aplikasi web lainnya. Nikmati performa tinggi, keamanan terjamin, dan layanan pelanggan 24/7 hanya di PlasaWebHost.


Artikel Lain

WhatsApp Kami

Support : +6282138153600

Admin Finance : +6285191239466