A manual installation of Moodle 2.0.6+ is one of two possible solutions to issues between newer versions of Moodle and PHP 5.2. If you would like to use a newer version of Moodle, please see our article on Editing the lib.php File in Moodle. If you already installed Moodle 2.1 through Fantastico but have not been able to use it, you will first want to remove that Moodle installation before proceeding with your manual install. When making a major change such as a software installation, it's also a good idea to make a backup of your account before beginning the installation.

  1. Download version 2.0.6. of Moodle from:


  2. Create a MySQL database and database user in cPanel.

  3. Using phpMyAdmin, set the database collation to utf8_unicode_ci.


  4. Using either the cPanel File Manager or an FTP program, upload the Moodle installation package to your site's document root (public_html for the main domain name). In this example we'll be installing Moodle onto a subdomain but we'll actually unpack the Moodle files before creating that subdomain.

  5. Once you've uploaded the Moodle installation package, using the cPanel File Manager, right click the file and choose Extract. This will extract all of the files into a sub folder named “moodle.”

  6. Since we're ultimately going to use Moodle on a subdomain, learn.example.com, we will need to create that subdomain in cPanel and point the subdomain's document root to the new moodle folder created above.

    • If you want to install Moodle for your main domain name or an addon domain, you will need to move all of the files and folders to that domain's document root instead of the Moodle subfolder. This can be easily done through cPanel File Manager. Navigate into the Moodle subfolder, click Select all from the menu bar, right click one of the highlighted files or folders and select “Move.” When the dialog box appears asking where to move your files, make sure you edit the path name to match your domain's document root.
  7. To run the Moodle installer script, in a browser, navigate to the domain, subdomain or subfolder where your Moodle files have been uploaded to followed by /install.php. Remember in our example we are installing Moodle to the subdomain learn.example.com so we will navigate to learn.example.com/install.php.


  8. Choose your preferred language and click “Next.”

  9. Fill in the requested paths for Web address, Moodle directory and Data directory for your Moodle installation. For security purposes, Moodle recommends that the Moodle Data directory be created above public_html (regardless of the domain you are installing Moodle for). You will want to edit the path for the Data directory to be /home/username/moodledata (replace username with your actual username). When you've finished making the necessary changes, click “Next.”


  10. On the next page, Moodle should default to MySQL which is correct. Simply click Next to continue to the next page.


  11. On the Database Settings page, you will be asked to fill in the following information:

    Database host: localhost
    Database name: The full name of the database you created in Step 2 (e.g. whhsup5_moodle)
    Database user: The full database user name you created in Step 2 (e.g. whhsup5_moodle
    Database password: The password you assigned to your database user in Step 2

    You can leave the database prefix automatically filled in by Moodle (it's optional) and leave Unix socket not selected. Click “Next” to continue.


  12. Review the copyright and license information and click continue to acknowledge you have reviewed and agree with the terms.

  13. At the bottom of the next page you should see the notification “Your server environment meets all minimum requirements.” Click “Continue” to complete the installation.

  14. This next step may take several minutes to complete. Once complete, you will see a list of items that have been installed, along with a success message under each. Scroll to the bottom of the page and click “Continue.”


  15. On the next page you will be asked to set up your Moodle administrator account. We do recommend changing the default username of “admin” to something else to help protect your account information. Please note that Moodle requires passwords to have at least one capitalized letter and one non alphanumeric character as well. Once you've filled in the requested information, click “Update profile.”


  16. To set your site's front page settings (page users will see when they visit your Moodle site) fill in the requested information on the next page.

Once you have complete your Moodle installation, you will be automatically taken to your Moodle site and logged into your site administration area. For more information on getting started with Moodle, please see Moodle's documentation: Getting started for teachers.

Did you find this article helpful?

We value your feedback!

Why was this article not helpful? (Check all that apply)
The article is too difficult or too technical to follow.
There is a step or detail missing from the instructions.
The information is incorrect or out-of-date.
It does not resolve the question/problem I have.
How did you find this article?
Please tell us how we can improve this article:
Email Address

new! - Enter your name and email address above and we will post your feedback in the comments on this page!

Did you find this article helpful?

Post a Comment

Email Address:
Phone Number:

Please note: Your name and comment will be displayed, but we will not show your email address.

Related Questions

Here are a few questions related to this article that our customers have asked:
Ooops! It looks like there are no questions about this page.
Would you like to ask a question about this page? If so, click the button below!
Need More Help?

Help Center Search

Current Customers

Email: support@WebHostingHub.com Ticket: Submit a Support Ticket
Call: 877-595-4HUB (4482)
757-416-6627 (Intl.)
Chat: Click To Chat Now

Ask the Community

Get help with your questions from our community of like-minded hosting users and Web Hosting Hub Staff.

Not a Customer?

Get web hosting from a company that is here to help.