Install OpenSID di aaPanel
Install OpenSID di aaPanel

Cara Install OpenSID (Sistem Informasi Desa) di aaPanel

OpenSID (Sistem Informasi Desa) adalah aplikasi web sumber terbuka yang dirancang khusus untuk mengelola data dan informasi desa. Bagi kamu yang ingin mengimplementasikan sistem ini di server aaPanel, berikut panduan lengkap instalasinya.

Prasyarat

Sebelum memulai instalasi, pastikan kamu memiliki.

  • 1-2 GB RAM
  • 20 GB penyimpanan
  • OS Ubuntu 22.04
  • aaPanel terinstal (versi terbaru direkomendasikan)
  • Domain atau subdomain yang sudah mengarah ke IP server
  • PHP 8.1 (PHP Extension: exif,fileinfo,sqlsrv,tidy)
  • Database MySQL 10.11.10-MariaDB
  • Web Server Nginx

Membuat Site OpenSID di aaPanel

Masuk ke menu Website pada dashboard aaPanel sebelah kiri, Pilih PHP ProjectAdd SiteCreate site.

Isikan domain/subdomain pada kolom Domain name, isikan description site aaPanel. Pilih Database yang digunakan untuk OpenSID secara otomatis aaPanel akan generate nama database, username, dan password. Pilih PHP Version. Confirm

Create Site OpenSID di aaPanel
Create Site OpenSID di aaPanel

Upload dan Extract File OpenSID

Dowload terlebih dahulu file opensid pada website resminya, lalu upload ke directory root site OpenSID aaPanel.

Extract file OpenSID-2511.0.0.zip menggunakan fitur unzip aaPanel, pindahkan semua isi hasil extract kedalam directory directory root site OpenSID.

Delete Directory OpenSID-2511.0.0 dan File OpenSID-2511.0.0.zip agar tidak membebani server.

Upload dan Extract File OpenSID ke Directory Root
Upload dan Extract File OpenSID ke Directory Root

Disable fitur Anti-XSS attack pada site OpenSID aaPanel, dengan masuk conf pada site.

Disable Anti-XSS Attack Site OpenSID aaPanel
Disable Anti-XSS Attack Site OpenSID aaPanel

Install PHP Extension yang Dibutuhkan OpenSID

Agar OpenSID berjalan lancar, harus install extension/library PHP yang dibutukan OpenSID. Masuk ke menu App Store, pilih PHP yang digunakan contoh disini 8.1, Klik Setting.

Masuk ke menu Install extension cari yang dibutuhkan seperti fileinf0, exif, sqlsrv (Untuk Database MySQL dan MariaDB), dan tidy. tunggu sampai proses instalation selesai.

Install PHP Extension untuk OpenSID
Install PHP Extension untuk OpenSID

Compile Manual PHP Extension tidy

Karena extenstion tidy tidak tersedia di install extensions, maka kita harus melakukan compile manual. SSH Remote pada server/ubuntu/cloud yang menjalankan aaPanel.

  • Install terlebih dahulu package libtidy

sudo apt install libtidy-dev

  • Masuk ke directory source code tidy

cd /www/server/php/81/src/ext/tidy

  • Jalankan Perintah phpize

sudo phpize

  • Membuat file configuration tidy

sudo ./configure –with-php-config=/www/server/php/81/bin/php-config

  • Melakukan Compile dan Install extension, tunggu sampai proses selesai.

make

make install

  • Masukan extension tidy hasil compile pada php.ini bagian paling bawah.

extension = tidy.so

setelah selesai compile dan configuratoin. lakukan restart service php pada aaPanel.

Configuration URL Rewrite Nginx

Saat kita mengakses halaman beranda OpenSID/ domain akan berantakan , itu disebabkan URL Rewrite Nginx yang digunakan OpenSID belum di configuration.

Masuk ke Conf site OpenSID pada aaPanel, lalu pilih URL Rewrite. Masuk konfigurasi dibawah ke site OpenSID. Konfigurasi Nginx ini berisi beberapa aturan rewrite dan pengaturan keamanan.

# enforce NO www
if ($host ~* ^www\.(.*))
{
   set $host_without_www $1;
   rewrite ^/(.*)$ $scheme://$host_without_www/$1 permanent;
}
# if your default controller is something other than “welcome” you should change the following
if ($request_uri ~* ^(/welcome(/index)?|/index(.php)?)/?$)
{
   rewrite ^(.*)$ / permanent;
}
# removes trailing “index” from all controllers
if ($request_uri ~* index/?$)
{
   rewrite ^/(.*)/index/?$ /$1 permanent;
}
# removes trailing slashes (prevents SEO duplicate content issues)
if (!-d $request_filename)
{
   rewrite ^/(.+)/$ /$1 permanent;
}
# removes access to “system” folder, also allows a “System.php” controller
if ($request_uri ~* ^/system)
{
   rewrite ^/(.*)$ /index.php?/$1 last;
   break;
}
# unless the request is for a valid file (image, js, css, etc.), send to bootstrap
if (!-e $request_filename)
{
   rewrite ^/(.*)$ /index.php?/$1 last;
   break;
}
# catch all
error_page 404 /index.php;
# deny access to apache .htaccess files
location ~ /\.ht
{
   deny all;
}

Configuration URL Rewrite Site Nginx OpenSID

Configuration URL Rewrite Site Nginx OpenSID

Pemasangan Setup Wizard OpenSID

Akses domain/subdomain yang digunakan oleh OpenSID menggunakan protocol http, sampai muncul seperti gambar dibawah.

Pemasangan OpenSID
Pemasangan OpenSID

OpenSID akan memeriksa persyaratan server PHP Extension yang dibutuhkan. Pastikan tercentang hijau semua.

Memeriksa Persyaratan Server PHP Extension
Memeriksa Persyaratan Server PHP Extension

OpenSID akan verifikasi Permission Read dan Write pada Directory

Verifikasi Permission Read dan Write pada Directory OpenSID
Verifikasi Permission Read dan Write pada Directory OpenSID

Masukan nama database, username, dan password saat pembuatan site OpenSID aaPanel. Untuk Database Name, Database User dibuat sama oleh aaPanel.

Configuration Database OpenSID
Configuration Database OpenSID

Jika Database Name, Username, dan Password benar akan muncul pesan “Koneksi database berhasil“.

Koneksi Databse Berhasil
Koneksi Databse Berhasil

Tunggu sampai proses pembuatan table-table database dan memuat data aplikasi selesai.

Proses Pembuatan Table OpenSID
Proses Pembuatan Table OpenSID

Berikut halaman beranda OpenSID.

Tampilan Beranda OpenSID Berantakan
Tampilan Beranda OpenSID Berantakan

Tampilan From Login Dashboard OpenSID.

From Login OpenSID
From Login OpenSID

Username dan Password Default OpenSID admin/sid304.

Configuration protocol SSL/https

Fungsi dari Protocol SSL untuk mengamankan lalu lintas data/ encryption dari server ke brower client, seperti Google Chrome, Mozila Firefox, Safari agar tidak bisa dilihat data yang ditransferkan. pilih domain/subdomain yang digunakan OpenSID.

Masuk ke site conf OpenSID aaPanel, apply. Tunggu sampai pembuatan private key dan Certificate selesai.

Configuration Protocol SSL
Configuration Protocol SSL

Berikut hasil pembuatan Private Key dan Certificate syarat agar bisa menggunakan https atau simbol gembok di browser. Lakukan Refresh domain/subdomain pada website OpenSID.

Hasil Pembuatan Private Key dan Certificate SSL atau https
Hasil Pembuatan Private Key dan Certificate SSL atau https

Tamabhakan configuration Nginx di bawah pada URL Rewrite site OpenSID,fungsinya ketika ada yang mengakses Website OpenSID menggunakan protocol http akan diarahkan ke https.

# Redirect http to https
listen 80 default_server;
server_name masukan_domain;
return 301 https://$host$request_uri;