Softaculous

Install Moodle with Softaculous for online courses

Set up a Moodle learning platform on cPanel hosting with Softaculous: requirements, data folder, cron, email and the first course, plus when a school needs a bigger plan.

IntermediatecPanel hosting2 min read

Moodle is the world's most widely used open-source learning management system (LMS), used by schools, trainers and companies to run online courses, quizzes and assignments. Softaculous installs it on cPanel hosting in a few minutes. Moodle has a few requirements that matter more than for a normal website, so follow these steps carefully.

Before you start

  • A domain or subdomain such as learn.example.com with a valid SSL certificate.
  • PHP set to a version supported by the Moodle release in MultiPHP Manager, with extensions intl, zip, gd, soap, sodium, mbstring, xml and curl enabled in Select PHP Version.
  • In PHP options, set max_input_vars to at least 5000 (Moodle refuses to install with less) and memory_limit to 256M or more.

Install Moodle

  1. Open cPanel → Software → Softaculous Apps Installer, search Moodle (category Educational) and click Install.
  2. Installation URL: https://, the subdomain, empty directory.
  3. Data Directory: Moodle stores uploaded files in moodledata. Make sure it is outside the web root, e.g. /home/cpuser/moodledata.
  4. Set the site name, admin username, password and email.
  5. Click Install. Installation can take a few minutes because Moodle creates many database tables.

Set up the Moodle cron (required)

Moodle needs a cron job to send notifications, process forum posts and clean up. Add it in cPanel Cron Jobs to run every minute or every 5 minutes:

/usr/local/bin/php /home/cpuser/learn.example.com/admin/cli/cron.php >/dev/null 2>&1

Use the PHP binary matching the site's version; see cron troubleshooting. Site administration → Notifications warns you if cron has not run recently.

Configure email

Course enrolments, password resets and forum digests depend on email. Go to Site administration → Server → Email → Outgoing mail configuration:

  • SMTP hosts: server-hostname:465
  • SMTP security: SSL
  • SMTP username and password: a mailbox such as noreply@example.com
  • No-reply address: the same mailbox

Moodle can send many emails at once (for example to a whole course); keep an eye on the hourly sending limit.

Warning: Moodle is resource-hungry. Shared hosting is fine for small courses and pilots. Schools with hundreds of active students, video-heavy courses or simultaneous exams should use a VPS or contact support for advice.

Create your first course

  1. Go to Site administration → Courses → Add a new course.
  2. Enter the full and short name, category and format (Topics or Weekly).
  3. Save and add activities: files, quizzes, assignments, forums.
  4. Enrol users under Participants, or enable self-enrolment.

Troubleshooting

  • Installer stops at environment check: fix the listed PHP setting or extension, then reload.
  • Uploads fail: raise upload_max_filesize and post_max_size, and the course's maximum upload size.
  • Slow pages: purge caches in Site administration → Development → Purge caches, and check resource usage.

Next steps

Was this guide helpful?

Still stuck?

Ask MdmHost AI for a quick answer, or open a ticket and our team will take a look. We are here 24/7.