# Direct Hosting Deployment

Paket direct hosting berisi aplikasi PHP dan tidak membutuhkan XAMPP. Gunakan PHP 7.4 atau lebih baru dengan ekstensi `pdo_mysql`, `dom`, dan `zip`; gunakan MySQL 8 atau kompatibel.

## Database

Buat database dan user khusus melalui panel hosting, lalu impor `database/schema.sql` melalui phpMyAdmin. Untuk instalasi lama, backup database terlebih dahulu dan jalankan `database/migration_dynamic_sumatif.sql`. Jangan mengimpor seed demo ke database produksi.

## File upload

Jika hosting mengizinkan document root, arahkan domain ke folder `public/`. Jika hosting hanya menyediakan `public_html`, simpan folder `app`, `config`, `database`, dan `storage` di atas `public_html`, lalu salin isi folder `public/` ke `public_html/`. Sesuaikan `require` pada `public/index.php` agar menunjuk ke `app/bootstrap.php` di lokasi sebenarnya.

Salin `config/config.example.php` menjadi `config/config.php`, isi host, port, nama database, user, password, nama aplikasi, URL dasar, dan `installer_key`. Pastikan `config/config.php` tidak dapat diakses langsung dari browser. Folder `public/uploads/` harus writable oleh PHP (umumnya permission 0755 sesuai kebijakan hosting) agar administrator dapat mengganti logo sekolah dari menu **Pengaturan**. Logo yang diterima adalah PNG, JPG, atau WEBP dengan ukuran maksimal 2 MB.

## Pemeriksaan setelah online

Buka domain dan buat akun administrator pertama. Setelah login, buka **Pengaturan → Periode akademik**, lalu buat tahun ajaran dan semester beserta tanggal mulai serta tanggal selesai. Periode yang disimpan akan otomatis muncul pada pilihan **Periode** di Data Utama, Kalender Pendidikan, Minggu Efektif, Penilaian, dan Raport. Setelah itu dari **Data Utama**, buat akun guru, tautkan ke data guru, serta atur assignment kelas dan mata pelajaran. Login sebagai guru untuk memastikan hanya konteks yang ditugaskan yang dapat dibuka. Uji penyimpanan Nilai Pengetahuan, PSTS/PSAT, impor CSV, dan unduh raport XLSX. Jadwalkan backup database melalui fitur hosting, bukan dengan mengandalkan folder aplikasi.
