Moodle — ucca.college
Status: Installed, running, DNS cutover pending
Date installed: 10 March 2026
Installed by: Alex (Claude Code)
Server
| Field |
Value |
| Provider |
Hostinger shared hosting |
| IP |
82.112.249.102 |
| SSH port |
65002 |
| SSH user |
u389030464 |
| SSH key |
~/.ssh/ucca_moodle |
| SSH command |
ssh -i ~/.ssh/ucca_moodle -p 65002 u389030464@82.112.249.102 |
| Web server |
LiteSpeed (Hostinger managed) |
| PHP |
8.3.28 |
| Database server |
MariaDB 11.8.3 |
Moodle Installation
| Field |
Value |
| Version |
Moodle 4.3 (latest stable at install) |
| Webroot |
/home/u389030464/domains/ucca.college/public_html/ |
| Moodledata |
/home/u389030464/domains/ucca.college/moodledata/ |
| wwwroot |
http://ucca.college (needs DNS cutover + SSL before HTTPS) |
| Site name |
UCCA College |
| Short name |
UCCA |
Database
| Field |
Value |
| Host |
localhost |
| Database name |
u389030464_ucca_moodle |
| Username |
u389030464_alex_moodle |
| Password |
MoodleUcca2026Ax |
| Created via |
hPanel → Databases → MySQL Databases |
Admin Credentials
| Field |
Value |
| Admin user |
admin |
| Admin password |
UccaAdmin2026Moodle |
| Admin email |
admin@ucca.online |
| Admin URL |
http://ucca.college/admin (once DNS live) |
Web Services (REST API)
| Field |
Value |
| REST API enabled |
Yes — 437 functions available |
| Token |
c340247794bacf8bf61f9b424b537f82 |
| Token name |
MOODLE_WS_TOKEN |
| Service |
Moodle mobile web service |
| User |
admin |
REST API endpoint:
http://ucca.college/webservice/rest/server.php
?wstoken=c340247794bacf8bf61f9b424b537f82
&wsfunction=FUNCTION_NAME
&moodlewsrestformat=json
Cron Job
Configured in hPanel → Advanced → Cron Jobs.
| Field |
Value |
| Schedule |
*/5 * * * * (every 5 minutes) |
| Command |
/usr/bin/php /home/u389030464/domains/ucca.college/public_html/admin/cli/cron.php |
Notes
- Sodium extension — was missing at install time. Alex enabled it by copying the ini file to the active PHP config directory. If Hostinger updates PHP this may need re-enabling. Check if Moodle reports sodium missing after any PHP version change.
- No Apache vhost needed — Hostinger LiteSpeed manages virtual hosts automatically via hPanel domain config.
- No sudo access — shared hosting environment, no root. All system config via hPanel.
- crontab not available — shared hosting blocks direct crontab. Cron managed via hPanel only.
Pending
| Item |
Action |
Owner |
| DNS cutover |
Cloudflare → ucca.college zone → replace A records with 82.112.249.102 proxied OFF |
Tim |
| SSL |
Hostinger provisions automatically once DNS resolves — or use Let's Encrypt via hPanel |
Tim / Alex |
| wwwroot update |
After SSL live — update Moodle wwwroot from http:// to https://ucca.college via CLI: sudo -u www-data php admin/cli/cfg.php --name=wwwroot --set=https://ucca.college |
Alex |
| Step 8 connector |
Delivery connector code — pushes UCCA course packages into Moodle via REST API |
Alex |
Step 8 — Connector Preview
The UCCA delivery connector will use the Moodle Web Services REST API to push completed course packages. Functions needed:
| Moodle function |
Purpose |
core_course_create_courses |
Create a new course from UCCA job metadata |
mod_scorm_add_scorm |
Upload SCORM package as a course module |
mod_resource_add_resource |
Attach PDF course pack as downloadable resource |
enrol_manual_enrol_users |
Optionally enrol users on publish |
Envelope verification URL will be added to course description at publish time — keys.ucca.online/verify?id={envelope_id}.
Version History
| Version |
Date |
Change |
Author |
| 1.0 |
2026-03-11 |
Converted from moodle-infrastructure.md |
Claude Code |