Skip Main MenuSkip Global SearchSkip Moodle AnnouncementsSkip We support

We support

Open Schools Alliance

What Moodle is

Moodle is a course management system (CMS) - a software package designed to help educators create quality online courses. Such e-learning systems are sometimes also called Learning Management Systems (LMS) or Virtual Learning Environments (VLE). One of the main advantages of Moodle over other systems is a strong grounding in social constructionist pedagogy. Moodle was originally created by Martin Dougiamas, who now acts as Lead Developer and Moodle Architect at the head of a lively and vigorous Moodle Development and Support community.

Moodle is Open Source software, which means you are free to download it, use it, modify it and even distribute it (under the terms of the GNU General Public License).

How popular is Moodle?

Moodle.org runs a site registration system to try and calculate moodle usage. Based on our experience as a moodle partner offering hosting services, we would say that only about half the moodle-using organisations out there have registered their sites. Since Moodle 1.5 was released in June 2005, the Moodle site registration program has gathered basic usage data from each site when registered. About 80% of the registered moodle sites are now 1.5 or above, so this data is becoming more accurate, but it must be borne in mind that when a site is registered it is normally in the early stages of use, and usage figures will grow during the life of the site. Even so, the figures are impressive:

Registered Moodle sites: 45827

  • Courses: 2010644
  • Users: 20867613
  • Teachers: 1917034
  • Enrolments: 20973633
  • Forum posts: 24895958
  • Resources: 14941135
  • Quiz questions: 19123675

(The above data was gathered at the end of June 2008)

Remember, these figures are based only on registered sites.

What Moodle is not

Moodle is not a Content Management System. If you want to build a web site, and have the ability to do easy page updates, and add-in modules for your visitors, then you should use something like one of the Nuke series (PHPNuke, PostNuke, etc), PHPWebsite, Mambo, Etomite, Joomla, Exponent, Typo3 or one of the many other portal and content systems that are now available in open source form.

Although it is possible to create a general purpose website using Moodle, it is not optimised for this purpose, but rather for Learning and Teaching, a task with different priorities and requirements. There are however third-party add-ons for Moodle that extend the capabilities of the system, sometimes in quite unexpected directions. See here for more details of available add-ons.

What do I need in order to run Moodle on my own server?

Moodle requires a web server, some way of running the PHP web application language (usually handled by the web server program) and a database to store the Moodle course and user information. It also requires some disk space over and above that needed to store the moodle program itself, so that course creators can upload resources (such as documents, pictures, presentations, sound and video files, web pages and so on) for use in courses.

OK, details please...

You will need:

A server machine - This can be an ordinary desktop PC for smaller installations. It should have:
  • A minimum of a 1GHz processor (two or more processors in a single machine is common these days, and if you are running Linux then a quad-core CPU is ideal)
  • 512MB RAM (more is always better - we reckon on a minimum of of 2GB if you are going to have many concurrent users)
  • A minimum of 50MB of disk space for the Moodle installation, and more disk space for uploaded resources and the database. For a small installation with just a few teachers and learners, you could manage with 200MB (after the server operating system has been installed), but more is better.
  • Fast disks for good database performance. RAID 5 with four or more disks, or RAID 10 (striped and mirrored) will give you the best performance. If high-speed SCSI RAID is beyond your budget there are now some very good SATA-based RAID systems available at a lower cost.
  • A network interface, with a connection to the network on which your learners' workstations are situated.
  • Some kind of backup device. You could back up to tape, or CD-R or DVD-R, or across the network to another server. It is *very* important to ensure that your database and Moodle filestore are backed-up regularly in case you have a server failure.

The operating system on your server machine can be any of:

  • Linux (Red Hat / Fedora Core / CentOS / Mandrake / SUSE / Debian & many others)
  • Apple OSX
  • The different versions of NetBSD and FreeBSD
  • Sun Solaris
  • Other versions of Unix (such as AIX and Unixware) for which an approriate web server and database is available
  • Windows NT / 2000 Server / 2003 Server, or (for smaller demo and trial installations only) MS Windows XP Professional - Microsoft's workstation operating systems limit the number of simultaneous network connections available, so they tend to be unsuitable for production Moodles of any size. Also bear in mind that if using a Windows server you will probably require a lot more RAM - doubling the above figure is probably sensible.

The web server program can be:

  • Apache 1.3.x and 2.x.x
  • Microsoft IIS
  • Zeus
  • Any other web server service that can run PHP (lighthttpd has been reported to be compatible)

The database can be:

  • MySQL (recommended) - including version 5, which is now probably be the best one for new Moodle installs
  • PostgresQL (Moodle now has much improved support for this DBMS)
  • Microsoft SQL Server (For Moodle versions 1.7 and later)
  • Oracle (For Moodle versions 1.7 and later)

Support for other database types may be coming with later releases.

Moodle will work with the following PHP versions:

  • 4.3.10 or later
  • 5.1.x, 5.2.x (We have recently been installing most Linux-based moodles on PHP 5.2.6, with all of our recent Windows installs using PHP 5.2.1 or later).
A PHP Accelerator (OpCode caching) is highly recommended in order to reduce CPU load when you have multiple simultaneous users. E-Accelerator and APC (from pecl.php.net) both work well, with the latter just edging out the former on Linux at the moment in terms of functionality.

When you are setting up your server, or choosing a hosting provider, make sure that PHP is not running in what is known as *Safe Mode*, as this prevents certain essential Moodle functions from working. If OpenBaseDir restrictions are in use, ensure that the entire Moodle code directory and the whole of the MoodleData directory are included in the directive.
Welcome to pteppic.net
Authorised UK Moodle Partner
Providing professional Moodle Services since 2004

Running on Moodle Version 1.9.7
Skip Staff Publications

Staff Publications

Moodle 1.9 for Design and Technology: Paul Taylor

Cover image of Moodle 1.9 for design and technology book
Skip We use and recommend

We use and recommend


For Domain Registration and DNS Zone Hosting
Skip Science Fiction

Science Fiction

We are all Science Fiction Fans here...if you are too, please visit our friends at:
Starship Sofa Logo
Starship Sofa

The Audio Science Fiction Magazine