Panduan Lengkap Cara Install Rapor Digital Madrasah (RDM) di VPS Ubuntu / Debian

Pengantar

Rapor Digital Madrasah atau RDM adalah sistem pengelolaan nilai dan laporan akademik yang dirancang untuk madrasah. Dengan RDM, proses pencatatan nilai, pembuatan rapor, dan distribusi laporan menjadi lebih efisien dan terstruktur.

Menginstal RDM di VPS Linux memberikan beberapa keuntungan. Operator atau admin IT memiliki kontrol penuh atas server, kinerja lebih stabil dibanding shared hosting, dan fleksibilitas akses dari mana saja selama terkoneksi internet. Artikel ini akan memandu instalasi RDM dari awal hingga siap digunakan, khusus untuk pemula maupun admin madrasah yang ingin mengelola VPS sendiri.

Persiapan Server (Ubuntu/Debian)

  • Sistem Operasi: Debian 11 direkomendasikan. Ubuntu 24.04 bisa digunakan tetapi memerlukan konfigurasi tambahan.
  • PHP Version: 7.2 (wajib dengan Ioncube Loader)
  • Web Server: Nginx (direkomendasikan) atau Apache
  • Database: MySQL 5.7+ / MariaDB 10.3+
  • Ram : Minimal 2GB RAM (4GB direkomendasikan)
  • Storage: Minimal 20GB SSD

Persyaratan Khusus PHP untuk RDM

  • PHP 7.2 (versi spesifik yang didukung RDM)
  • Ioncube Loader untuk PHP 7.2 (kritis untuk dekripsi kode)
  • allow_url_fopen = On di php.ini
  • Ekstensi wajib: mysql, curl, gd, mbstring, xml, zip, bcmath, json
  • PHP-FPM untuk performa optimal dengan Nginx

Langkah - Langkah Melakukan Instalasi

  1. Persiapan Awal dan Koneksi SSH:
    • Akses VPS Plasawebhost Anda melalui SSH:
      ssh root@IP_VPS
      
    • Update system :
      sudo apt update 
  2.  Instalasi Web Server Nginx
    sudo apt install nginx -y
    sudo systemctl start nginx
    sudo systemctl enable nginx
    sudo systemctl status nginx
  3.  Instalasi Database MariaDB:
    sudo apt install mariadb-server mariadb-client -y
    sudo mysql_secure_installation

    Ikuti petunjuk secure installation:

    • Tekan Enter saat diminta password root (jika belum ada)

    • Pilih n untuk unix_socket authentication

    • Pilih y untuk mengganti password root

    • Reload privilege tables

    • Pilih y untuk menghapus user anonymous

    • Pilih y untuk menonaktifkan login root dari remote

    • Pilih y untuk menghapus database test

    • Pilih y untuk reload privilege tables

  4. Instalasi PHP 7.2 dengan Ioncube Loader
    RDM umumnya berjalan stabil pada PHP 7.2.
    1. Tambah repository PHP 7.2
      sudo apt install apt-transport-https lsb-release ca-certificates wget -y
      wget -qO - https://packages.sury.org/php/apt.gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/php.gpg
      echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
      sudo apt update
      
    2. Install PHP 7.2 dan ekstensi
      sudo apt install php7.2 php7.2-fpm php7.2-mysql php7.2-curl \
      php7.2-gd php7.2-mbstring php7.2-xml php7.2-zip php7.2-bcmath \
      php7.2-json php7.2-soap -y
      
    3. Download dan instal Ioncube Loader
      cd /tmp
      wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
      tar xvfz ioncube_loaders_lin_x86-64.tar.gz
      
    4. Cek versi PHP :
      php -v
    5. Cari direktori ekstensi PHP
      php -i | grep extension_dir

      Akan menampilkan berikut :

      root@lab:/tmp# php -i | grep extension_dir
      extension_dir => /usr/lib/php/20170718 => /usr/lib/php/20170718
    6.  Copy ioncube loader
      sudo cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/20170718

      Sesuaikan /usr/lib/php/20170718 dengan extension directory anda

    7. Set variabel path ekstensi:
      PHP_EXT_DIR=/usr/lib/php/20170718
      
      Sesuaikan /usr/lib/php/20170718 dengan extension directory anda
    8. Aktifkan ioncube di PHP
      echo "zend_extension = $PHP_EXT_DIR/ioncube_loader_lin_7.2.so" | sudo tee \
      /etc/php/7.2/fpm/conf.d/00-ioncube.ini
      echo "zend_extension = $PHP_EXT_DIR/ioncube_loader_lin_7.2.so" | sudo tee \
      /etc/php/7.2/cli/conf.d/00-ioncube.ini
    9. Aktifkan allow_url_fopen
      sudo sed -i 's/allow_url_fopen = Off/allow_url_fopen = On/g' /etc/php/7.2/fpm/php.ini
      sudo sed -i 's/allow_url_fopen = Off/allow_url_fopen = On/g' /etc/php/7.2/cli/php.ini
    10. Restart PHP-FPM
      sudo systemctl restart php7.2-fpm
    11. Cek IonCube Loader
      php -v

      output :

      Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
          with the ionCube PHP Loader + ionCube24 v15.0.0, Copyright (c) 2002-2025, by ionCube Ltd.
          with Zend OPcache v7.2.34-59+0~20251218.111+debian11~1.gbp637f71, Copyright (c) 1999-2018, by Zend Technologies
  5. Konfigurasi firewall UFW
    sudo apt install ufw -y
    sudo ufw allow ssh
    sudo ufw allow 80/tcp
    sudo ufw allow 443/tcp
    sudo ufw --force enable
    sudo ufw status verbose
  6.  Persiapan Database untuk RDM
    1. Login ke MariaDB :
      sudo mysql -u root -p
    2. Buat Database :
      CREATE DATABASE rdm_madrasah CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    3. Buat user khusus :
      CREATE USER 'rdm_admin'@'localhost' IDENTIFIED BY 'Password_Kuat_123!';
    4. Berikan hak akses :
      GRANT ALL PRIVILEGES ON rdm_madrasah.* TO 'rdm_admin'@'localhost';
    5. Terapkan Perubahan :
      FLUSH PRIVILEGES;
      EXIT;
  7. Download Source Code RDM Resmi
    1. Pertama bisa download dari website resmi RDM disini
    2. Pastikan file sudah berada di Device local anda
    3. Upload file dari Laptop atau Komputer ke VPS 
      Bisa menggunakan SCP dengan perintah berikut :
       scp "C:\Users\Downloads\RDMhosting.zip" root@123.123.123.123:/var/www/html
      Sesuaikan dengan Directory dan alamat IP VPS yang di pakai
    4. Kemudian cek apakah sudah berada di var/www/html
      cd /var/www/html
    5. Lakukan extract dan remove RDMhosting.zip 
      gunakan perintah berikut 
      sudo unzip RDMhosting.zip && sudo rm RDMhosting.zip
      
    6. Set permission:
      chown -R www-data:www-data /var/www/html
      chmod -R 755 /var/www/html
      
  8. Konfigurasi Virtual Host Nginx
    1. Buat file konfigurasi:
      nano /etc/nginx/sites-available/rdm.conf
      
    2. isi
      server {
          listen 80;
          listen [::]:80;
      
          # Bisa diakses via IP
          server_name ipaddress;
      
          root /var/www/html;           # pastikan index.php ada di sini
          index index.php index.html index.htm;
      
          # Static files & routing
          location / {
              try_files $uri $uri/ /index.php?$query_string;
          }
      
          # PHP handling
          location ~ \.php$ {
              include snippets/fastcgi-php.conf;
              fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
              fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
              include fastcgi_params;
          }
      
          # Security: deny hidden files
          location ~ /\. {
              deny all;
          }
      
          # Optional: log files
          access_log /var/log/nginx/rdm.access.log;
          error_log  /var/log/nginx/rdm.error.log;
      }
      
    3. Aktifkan site dan reload Nginx:
      ln -s /etc/nginx/sites-available/rdm.conf /etc/nginx/sites-enabled/
      nginx -t
      systemctl reload nginx
      

  9. Akses Instalasi via Browser
    Buka browser:
    http://ip-address

    Masukkan User dan Nama Database menghubungkan database dan menyelesaikan instalasi RDM.

Kesimpulan

Debian 11 adalah pilihan terbaik untuk RDM karena stabil dan mendukung PHP 7.2. Ikuti langkah-langkah: Nginx, MariaDB, PHP 7.2 dari Sury, ionCube Loader via conf.d, konfigurasi php.ini, upload source code, virtual host, hingga keamanan server. Dengan setup ini, RDM akan berjalan lancar dan siap digunakan.


Artikel Lain

WhatsApp Kami

Support : +6282138153600

Admin Finance : +6285191239466