Dokumentasi RyuExam CBT

Panduan pemasangan aplikasi ujian dari awal: di komputer sendiri (localhost), di jaringan sekolah (LAN), di hosting (cPanel), sampai memasukkan kode lisensi.

Panduan Penggunaan untuk AdminData master, bank soal, jadwal, pemantauan ujian, dan pengaturan, lengkap dengan tangkapan layar.
Buka panduan →
Panduan Penggunaan untuk GuruBank soal, template Word, impor, rumus, set poin, preview, dan unduh nilai, lengkap dengan tangkapan layar.
Buka panduan →
Panduan Ujian untuk SiswaLogin, memilih ujian, menjawab soal, dan mengumpulkan jawaban dari HP maupun laptop.
Buka panduan →
Instalasi & Optimasi di VPS dengan FASTPANELSpek server per jumlah siswa, panel FASTPANEL, HTTPS, optimasi, uji beban, dan backup. Perintah bisa disalin.
Buka panduan →
01

Persiapan

Satu komputer di sekolah berperan sebagai server: menjalankan aplikasi dan database. Perangkat siswa cukup membuka alamat server lewat browser, tanpa memasang apa pun.

Komputer server

  • Windows 10/11 64-bit
  • RAM 4 GB (disarankan 8 GB)
  • SSD, ruang kosong 5 GB
  • Port LAN (kabel lebih stabil)

Perangkat lunak

  • Laragon Full (Apache, PHP 8.x, MySQL 8)
  • Folder aplikasi RyuExam CBT
  • Kode lisensi dari penjual

Perangkat siswa

  • HP Android/iOS atau laptop
  • Chrome, Edge, atau Safari terbaru
  • Tersambung ke WiFi/LAN yang sama

Perkiraan kapasitas

Siswa ujian bersamaanRekomendasi serverAccess point
Sampai 100Core i3, RAM 4 GB, SSD3 AP
100 – 300Core i5, RAM 8 GB, SSD1 AP tiap 30–40 siswa
Lebih dari 300Core i5/i7, RAM 16 GB, SSD NVMe1 AP tiap 30 siswa, dual-band
Satu AP untuk satu ruang

Jangan memaksakan satu access point untuk seluruh sekolah. AP rumahan biasa mulai melambat di atas 30–40 perangkat aktif.

02

Instal di Localhost

Cara tercepat mencoba aplikasi di satu komputer. Langkah yang sama juga dipakai untuk server ujian LAN.

  1. Pasang Laragon

    Unduh Laragon Full dari laragon.org, lalu pasang di C:\laragon.

  2. Salin folder aplikasi

    Salin folder aplikasi ke C:\laragon\www\ujian. Pastikan berkas index.php berada langsung di C:\laragon\www\ujian\index.php, bukan di subfolder lain.

  3. Jalankan Apache & MySQL

    Buka Laragon, klik Start All. Tunggu sampai Apache (port 80) dan MySQL (port 3306) berstatus berjalan.

  4. Siapkan database

    Aplikasi membuat database cbt_ujian secara otomatis saat pertama kali dibuka. Jika paket Anda menyertakan berkas .sql, buat database cbt_ujian (collation utf8mb4_unicode_ci) di http://localhost/phpmyadmin atau HeidiSQL bawaan Laragon, lalu impor berkas tersebut.

  5. Periksa config.php

    Pada instalasi Laragon standar berkas ini tidak perlu diubah. Nilai bawaan yang dipakai di komputer lokal:

    C:\laragon\www\ujian\config.php
    $db_local = [
        'host' => 'localhost',
        'port' => '3306',
        'name' => 'cbt_ujian',   // nama database
        'user' => 'root',
        'pass' => '',            // kosong pada Laragon
    ];

    Jika user root MySQL Anda memakai kata sandi, isikan pada 'pass'. Tidak perlu me-restart Laragon.

  6. Buka aplikasi di browser

    Halaman siswa di http://localhost/ujian dan panel admin di http://localhost/ujian/admin.php. Masuk ke panel admin memakai akun yang diberikan bersama paket aplikasi, lalu segera ganti kata sandinya.

localhost/ujian
Halaman login siswa RyuExam CBT
Halaman login siswa
localhost/ujian/admin.php
Halaman login panel admin RyuExam CBT
Halaman login panel admin
Agar server siap setiap dinyalakan

Di Laragon, klik Menu › Preferences, lalu centang Run Laragon when Windows starts dan Start All automatically.

03

Instal di Jaringan LAN

Server dipasang seperti pada bagian Localhost, lalu dibuka dari perangkat lain lewat jaringan sekolah. Internet tidak diperlukan selama ujian.

Server (Laragon) 192.168.1.100 Access Point Ruang 1 Access Point Ruang 2 HP / laptop HP / laptop HP / laptop HP / laptop Router / Switch (kabel LAN)

Semua perangkat berada dalam satu jaringan (subnet) yang sama. Contoh di panduan ini memakai IP server 192.168.1.100 dan router 192.168.1.1; sesuaikan dengan jaringan sekolah Anda.

1. Beri IP statis pada server

IP server harus tetap agar alamat ujian tidak berubah setelah router dinyalakan ulang.

  1. Buka Network Connections

    Tekan Windows + R, ketik ncpa.cpl, lalu Enter.

  2. Buka pengaturan IPv4

    Klik kanan adapter yang terhubung ke router (Ethernet) → Properties → klik dua kali Internet Protocol Version 4 (TCP/IPv4).

  3. Isi alamat

    Pilih Use the following IP address, isi sesuai tabel, lalu OK.

KolomContoh isian
IP address192.168.1.100 — di luar rentang DHCP router
Subnet mask255.255.255.0
Default gateway192.168.1.1 — IP router
Preferred DNS192.168.1.1 atau kosongkan

Cek hasilnya: buka Command Prompt, ketik ipconfig, lalu lihat baris IPv4 Address.

2. Izinkan port 80 di Windows Firewall

Firewall Windows sering memblokir akses dari perangkat lain. Cara tercepat: buka Command Prompt sebagai Administrator, lalu jalankan:

Command Prompt (Administrator)
netsh advfirewall firewall add rule name="RyuExam CBT" dir=in action=allow protocol=TCP localport=80

Cara manual: Windows + R → wf.msc → Inbound Rules › New Rule → Port → TCP 80 → Allow the connection → centang semua profil → beri nama → Finish.

3. Atur router & access point

PengaturanRekomendasi
Nama WiFi (SSID)Jelas per ruang, misalnya CBT_RUANG_01
KeamananWPA2-PSK (AES), kata sandi mudah diketik
Rentang DHCP192.168.1.101 – 192.168.1.250, jangan mencakup IP server
AP / Client IsolationMatikan. Jika aktif, HP siswa tidak bisa menjangkau server
Channel 2,4 GHzBedakan antar ruang yang berdekatan: 1, 6, 11
Mode APJika AP disambung ke router utama, pakai mode Access Point (bukan router) agar satu jaringan

4. Uji dari perangkat siswa

  1. Sambungkan perangkat

    Sambungkan satu HP atau laptop ke WiFi ruang ujian.

  2. Buka alamat server

    Di browser ketik http://192.168.1.100/ujian. Halaman login siswa harus tampil.

  3. Coba login siswa

    Masuk dengan satu akun siswa dan pastikan dashboard menampilkan jadwal ujian kelasnya.

  4. Ulangi di setiap ruang

    Lakukan uji yang sama dari tiap access point sebelum hari ujian.

Database otomatis memakai mode lokal

Saat dibuka lewat localhost, IP privat (192.168.x.x, 10.x.x.x, 172.16–31.x.x), nama komputer (mis. SERVER-CBT), atau domain .local/.test/.lan, aplikasi memakai $db_local tanpa perlu mengubah config.php.

Jika siswa membuka server lewat domain buatan sendiri (mis. cbt.sekolah.id dari DNS lokal), paksa mode lokal:

config.php
// Sebelum
$environment_mode = 'auto';
// Sesudah
$environment_mode = 'local';

Daftar periksa hari ujian

  • Server menyala dan tersambung kabel LAN, terhubung ke UPS atau stopkontak stabil.
  • Laragon: Apache & MySQL berjalan. Mode sleep dimatikan (Power & sleep › Never) dan Windows Update dijeda.
  • IP server sesuai hasil ipconfig; semua AP menyala dan sudah diuji dari tiap ruang.
  • Jadwal ujian & kelas sudah benar, token ujian siap dibagikan pengawas.
  • Database sudah dicadangkan lewat menu Backup di panel admin.
Tips

Bagikan alamat server dalam bentuk QR code di papan tiap ruang. Siswa juga dapat memilih Tambahkan ke Layar Utama di browser agar aplikasi terbuka seperti aplikasi biasa. Pengawas memantau lewat http://192.168.1.100/ujian/admin.php.

04

Instal di Hosting (cPanel)

Untuk ujian lewat internet. Aplikasi dipasang di hosting dan siswa membuka alamat domain sekolah dari mana saja. Langkahnya mirip instalasi lokal, tetapi memakai database dan alamat dari hosting.

Gambar adalah ilustrasi

Tangkapan layar di bagian ini adalah ilustrasi yang menyerupai cPanel, dengan data contoh (u123456). Tampilan, urutan menu, dan nama tombol bisa sedikit berbeda di setiap penyedia hosting.

Hosting

  • cPanel dengan PHP 8.x
  • MySQL atau MariaDB
  • SSL (AutoSSL/Let's Encrypt)
  • Cloud hosting disarankan untuk ujian serentak ratusan siswa

Berkas

  • Folder aplikasi dalam bentuk .zip
  • Berkas .sql bila ada di paket
  • Kode lisensi dari penjual

Alamat

  • Domain atau subdomain, misalnya ujian.sekolah.sch.id
  • Subdomain paling rapi untuk aplikasi ujian

Perkakas cPanel yang dipakai ditandai nomor langkah pada gambar berikut.

namadomain.com:2083
Beranda cPanel dengan perkakas yang dipakai ditandai nomor langkah
Beranda cPanel (ilustrasi): perkakas yang dipakai ditandai nomor langkah

Langkah 1. Unggah dan ekstrak aplikasi

  1. Buka File Manager

    Masuk ke cPanel, lalu klik File Manager. Buka folder tujuan: public_html untuk domain utama, atau folder subdomain (misalnya public_html/ujian) bila memakai subdomain.

  2. Unggah berkas ZIP

    Klik Upload, pilih berkas ZIP aplikasi, tunggu sampai selesai, lalu kembali ke File Manager.

  3. Ekstrak

    Pilih berkas ZIP, klik Extract, lalu konfirmasi folder tujuan.

  4. Periksa susunan folder

    Pastikan index.php, admin.php, dan config.php berada langsung di folder tujuan. Jika terbentuk satu folder tambahan di dalamnya, pilih semua isinya lalu pindahkan ke atas. Setelah itu hapus berkas ZIP.

namadomain.com:2083/…/filemanager
File Manager cPanel: tombol Upload dan Extract
File Manager (ilustrasi): unggah ZIP, lalu klik Extract
Jangan hapus berkas tersembunyi

Berkas .htaccess melindungi folder internal (views, data, dan _backup_questions) agar tidak bisa dibuka dari browser. Di File Manager, buka Settings dan centang Show Hidden Files agar berkas ini ikut terunggah dan terlihat.

Langkah 2. Buat database

  1. Buka MySQL® Database Wizard

    Dari beranda cPanel, klik MySQL® Database Wizard.

  2. Buat database

    Isi nama database (contoh cbtujian). cPanel menambahkan awalan akun, sehingga nama lengkapnya menjadi seperti u123456_cbtujian.

  3. Buat user database

    Isi username (contoh cbtadmin) dan password yang kuat. Catat ketiganya: nama database, username, dan password lengkap beserta awalannya.

  4. Beri hak akses

    Centang ALL PRIVILEGES, lalu lanjutkan sampai selesai.

namadomain.com:2083/…/sql/wizard
MySQL Database Wizard: nama database, user, dan hak akses
MySQL® Database Wizard (ilustrasi)

Langkah 3. Atur versi PHP dan ekstensi

Buka Select PHP Version (atau MultiPHP Manager), pilih PHP 8.x untuk domain yang dipakai, lalu aktifkan ekstensi berikut:

EkstensiKegunaan
pdo_mysql / mysqliKoneksi ke database MySQL.
sodiumVerifikasi lisensi. Tanpanya aktivasi gagal.
zipBackup dan impor ZIP bank soal.
mbstring, gd, curl, json, fileinfo, opensslPengolahan teks, gambar, dan komunikasi jaringan. Disarankan aktif.
namadomain.com:2083/…/select-php-version
Select PHP Version: versi PHP dan ekstensi yang diaktifkan
Select PHP Version (ilustrasi): pilih PHP 8.x dan aktifkan ekstensi

Langkah 4. Isi koneksi database di config.php

  1. Buka berkasnya

    Di File Manager, klik kanan config.php lalu pilih Edit (atau Code Editor).

  2. Isi bagian $db_hosting

    Masukkan nama database, user, dan password dari langkah 2. Biarkan host tetap localhost dan port 3306 kecuali penyedia hosting menyebut lain.

  3. Simpan

    Klik Save Changes. Bagian $db_local tidak perlu diubah.

public_html/config.php
$db_hosting = [
    'host' => 'localhost',
    'port' => '3306',
    'name' => 'u123456_cbtujian',   // nama database dari cPanel
    'user' => 'u123456_cbtadmin',   // user database
    'pass' => 'PASSWORD_DATABASE',  // password user database
];
namadomain.com:2083/…/editit
Code Editor cPanel membuka config.php dengan bagian db_hosting
Code Editor (ilustrasi): isi $db_hosting
Mode lingkungan

$environment_mode bawaan 'auto' sudah benar: saat dibuka lewat domain hosting aplikasi memakai $db_hosting, dan saat dibuka lewat localhost atau IP jaringan lokal memakai $db_local. Jika password mengandung tanda petik ' atau garis miring terbalik \, awali tanda itu dengan \.

Langkah 5. Impor database (bila paket menyertakan berkas .sql)

Tabel dibuat otomatis saat aplikasi pertama kali dibuka. Jika paket Anda menyertakan berkas .sql, buka phpMyAdmin, pilih database yang baru dibuat, klik tab Import, pilih berkasnya, lalu klik Go. Jika tidak ada berkas .sql, lewati langkah ini.

Langkah 6. Aktifkan HTTPS

Buka SSL/TLS Status, pilih domain atau subdomain yang dipakai, lalu klik Run AutoSSL (atau pasang sertifikat Let's Encrypt dari menu yang tersedia di hosting Anda). Setelah aktif, buka alamat dengan https://. Dengan HTTPS, cookie sesi aplikasi otomatis memakai tanda Secure sehingga lebih aman.

Langkah 7. Buka aplikasi, ganti password, dan aktifkan lisensi

  1. Buka panel admin

    Ketik https://ujian.sekolah.sch.id/admin.php (sesuaikan domain Anda). Halaman login admin akan tampil.

  2. Masuk dan ganti password

    Gunakan akun admin dari paket aplikasi, lalu segera ganti kata sandinya di Pengaturan › Kelola Admin.

  3. Aktifkan lisensi

    Ikuti langkah pada bagian Memasukkan Lisensi. Hosting sudah terhubung internet sehingga aktivasi bisa langsung dilakukan.

  4. Uji dari perangkat siswa

    Buka alamat ujian dari HP, login dengan satu akun siswa uji, dan pastikan jadwal ujian tampil.

ujian.sekolah.sch.id/admin.php
Halaman login panel admin setelah instalasi berhasil
Halaman login admin: tanda instalasi berhasil

Pengaturan agar lancar di hosting

  • Izin berkas: gunakan 0755 untuk folder dan 0644 untuk berkas. Folder data dan _backup_questions harus dapat ditulis oleh aplikasi; pada cPanel standar izin ini sudah cukup.
  • Interval sinkronisasi jawaban: di Pengaturan › Umum › Aturan Pengerjaan Ujian, atur 60 sampai 90 detik untuk hosting agar beban server ringan.
  • Berkas besar: bila impor soal atau Impor ZIP gagal karena ukuran, naikkan upload_max_filesize dan post_max_size lewat MultiPHP INI Editor.
  • Kapasitas: hosting bersama punya batas proses dan CPU. Untuk ujian serentak ratusan siswa, pilih paket cloud hosting atau VPS dan lakukan uji coba dengan banyak perangkat sebelum hari ujian.
  • Cadangan: aktifkan backup berkala di cPanel (Backup), dan unduh backup database lewat Pengaturan › Database sebelum serta sesudah ujian.
Saat memperbarui aplikasi

Cadangkan dulu folder dan database. Saat menimpa berkas dengan versi baru, jangan menimpa config.php dan folder data (berisi lisensi dan identitas sekolah), lalu buka situs sekali agar pembaruan tabel berjalan otomatis.

Masalah umum di cPanel

GejalaPenyebab & solusi
Error 500 atau halaman putihVersi PHP tidak sesuai atau ekstensi belum aktif (langkah 3). Lihat berkas error_log di folder aplikasi, dan pastikan .htaccess tidak rusak.
“Gagal Terhubung ke Database MySQL”Nama database, user, atau password di $db_hosting keliru. Pastikan memakai awalan akun cPanel lengkap, dan user sudah diberi ALL PRIVILEGES pada database tersebut.
Daftar berkas muncul atau halaman 404index.php tidak berada langsung di folder tujuan. Periksa susunan folder (langkah 1) atau arahkan domain ke folder yang benar di menu Domains.
“Ekstensi PHP sodium tidak aktif”Aktifkan sodium pada Select PHP Version, lalu muat ulang halaman aktivasi.
Impor atau unggah berkas gagalUkuran melebihi batas PHP. Naikkan upload_max_filesize dan post_max_size di MultiPHP INI Editor.
Lambat atau gagal saat banyak siswaBatas sumber daya hosting terlampaui. Naikkan interval sinkronisasi, tambah paket hosting, atau pindah ke cloud hosting/VPS.
Tampilan lama muncul setelah pembaruanMuat ulang paksa di browser (Ctrl + F5), atau hapus cache situs.
05

Memasukkan Lisensi

Aplikasi diaktifkan sekali per server memakai NPSN sekolah dan kode lisensi yang Anda terima dari penjual. Halaman ujian siswa tetap berjalan normal selama proses aktivasi.

Server perlu internet saat aktivasi

Aktivasi memeriksa kode ke server lisensi, jadi sambungkan komputer server ke internet selama langkah ini. Setelah aktif, aplikasi tetap aman dipakai tanpa internet untuk jangka waktu tertentu (tanggalnya tampil di halaman Kelola Lisensi).

  1. Siapkan NPSN dan kode lisensi

    NPSN terdiri dari 8 karakter. Kode lisensi berbentuk RYU-XXXXX-XXXXX-XXXXX-XXXXX. Belum punya kode? Hubungi penjual lewat WhatsApp.

  2. Buka halaman aktivasi

    Buka panel admin di http://localhost/ujian/admin.php. Bila lisensi belum aktif, halaman aktivasi tampil. Anda juga bisa membukanya langsung di http://localhost/ujian/aktivasi.php.

  3. Cari sekolah dengan NPSN

    Ketik NPSN sekolah, lalu klik Cari Sekolah.

    localhost/ujian/aktivasi.php
    Langkah 1 aktivasi: isi NPSN sekolah
    Langkah 1: masukkan NPSN
  4. Pastikan nama sekolah sesuai

    Nama sekolah, NPSN, dan paket lisensi akan tampil. Jika bukan sekolah Anda, klik Ganti NPSN.

  5. Masukkan kode lisensi lalu Aktifkan

    Tempel kode lisensi pada kolom Kode Lisensi, lalu klik Aktifkan. Jika berhasil, panel admin terbuka otomatis.

    localhost/ujian/aktivasi.php
    Langkah 2 aktivasi: isi kode lisensi
    Langkah 2: masukkan kode lisensi (nama sekolah dan kode pada gambar hanya contoh)

Melihat dan mengelola lisensi

Buka panel admin → Pengaturan → tab Lisensi → klik Kelola Lisensi. Halaman ini menampilkan:

  • Status lisensi (aktif atau tidak), nama sekolah, dan NPSN.
  • Paket: Satu Sekolah, Multi Sekolah, atau Developer.
  • Masa berlaku, serta batas waktu aman tanpa internet.
  • ID instalasi server ini, berguna bila perlu menghubungi penjual.

Tombol Periksa ulang ke server lisensi menyegarkan status, misalnya setelah perpanjangan dari penjual.

Pindah server atau pasang ulang

  1. Lepas lisensi di server lama

    Di halaman Kelola Lisensi, klik Lepas lisensi dari server ini. Bila server lama sudah tidak bisa diakses, minta penjual melepas instalasi lama.

  2. Aktifkan di server baru

    Ulangi langkah aktivasi di atas dengan NPSN dan kode lisensi yang sama.

Kuota instalasi

Setiap lisensi memiliki kuota jumlah server. Jika muncul pesan kuota penuh, lepas instalasi lama terlebih dahulu, lalu klik Aktifkan lagi.

06

Mengatasi Masalah

Gejala yang paling sering muncul saat pemasangan, beserta solusinya.

Instalasi & jaringan

GejalaPenyebab & solusi
Halaman “Gagal Terhubung ke Database MySQL”MySQL belum berjalan, atau nama/kata sandi di $db_local tidak sesuai. Bila server dibuka lewat domain sendiri, ubah $environment_mode menjadi 'local'.
ERR_CONNECTION_REFUSEDApache belum berjalan. Buka Laragon, klik Start All.
ERR_CONNECTION_TIMED_OUTPort 80 diblokir firewall, atau IP server berubah. Cek dengan ipconfig.
HP tersambung WiFi tapi halaman tidak terbukaAP/Client Isolation aktif, atau AP berjalan sebagai router terpisah. Matikan isolasi dan pakai mode Access Point.
Apache gagal start, port 80 terpakaiAplikasi lain (IIS, Skype, VMware) memakai port 80. Hentikan aplikasi tersebut, atau ganti port Apache di Laragon lalu buka http://IP:PORT/ujian dan izinkan port itu di firewall.
“Unknown database” atau tabel tidak ditemukanDatabase belum dibuat atau berkas .sql dari paket belum diimpor.
Halaman sangat lambat saat banyak siswaTerlalu banyak perangkat per AP, atau server memakai WiFi. Tambah AP dan sambungkan server dengan kabel.
Tampilan lama muncul setelah pembaruanMuat ulang paksa di browser siswa (Ctrl + F5) atau hapus data situs.
Cek cepat dari server

Jika http://localhost/ujian terbuka tetapi http://192.168.1.100/ujian tidak, masalah ada pada jaringan atau firewall, bukan pada aplikasi.

Lisensi

PesanPenyebab & solusi
NPSN harus 8 karakterPeriksa kembali NPSN yang diketik, tanpa spasi.
Tidak dapat menghubungi server lisensiKomputer server belum terhubung internet, atau koneksi diblokir. Periksa koneksi lalu coba lagi.
Kuota instalasi penuhLisensi sudah dipakai di server lain. Lepas instalasi lama (lihat bagian pindah server), atau minta penjual melepasnya.
Ekstensi PHP sodium tidak aktifAktifkan extension=sodium pada php.ini (sudah aktif pada Laragon standar), lalu restart Apache.
Nama aplikasi / footer perlu dikembalikanNama dan footer RyuExam CBT harus tetap seperti aslinya. Kembalikan, lalu klik Periksa ulang. Ujian siswa tetap berjalan normal.
Panel admin terkunciLisensi tidak aktif atau sudah berakhir. Buka halaman aktivasi, periksa ulang, atau masukkan kode lisensi baru.

Butuh bantuan pemasangan atau kode lisensi?

Hubungi kami lewat WhatsApp, atau daftar untuk memesan Cloud dan Source Code.

Chat WhatsApp Daftar