Moodle 3 Administration - Third Edition - Alex Buchner - E-Book

Moodle 3 Administration - Third Edition E-Book

Alex Buchner

0,0
43,19 €

-100%
Sammeln Sie Punkte in unserem Gutscheinprogramm und kaufen Sie E-Books und Hörbücher mit bis zu 100% Rabatt.

Mehr erfahren.
Beschreibung

An administrator's guide to configuring, securing, customizing, and extending Moodle

About This Book

  • Learn how to plan, install, optimize, customize, and configure Moodle
  • Guarantee a cutting-edge learning experience in a secure and customizable environment while optimizing your day-to-day workload
  • A one-stop guide with a problem-solution approach and a wide range of real-world examples

Who This Book Is For

If you are a technician, systems administrator, or part of academic staff, this is the book for you. This book is ideal for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment, this book will assist you with any administrative task. Some basic Moodle knowledge is helpful, but not essential.

What You Will Learn

  • Install and update Moodle on multiple platforms manually and via CLI and GIT
  • Manage courses and categories, users and cohorts, as well as roles
  • Get Moodle hooked up to repositories, portfolios, and open badges
  • Configure Moodle for mobile usage, accessibility, localization, communication, and collaboration
  • Guarantee backups, security and privacy, and achieve maximum performance via the Moodle Universal Cache and the new cron system
  • Configure the Moodle events system to generate comprehensive reports, statistics, and learning analytics
  • Network Moodle with Mahara and extend it with third-party add-ons and via LTI
  • Customize Moodle web services to enable mobile learning and integration with other IT systems

In Detail

Moodle is the de facto standard for open source learning platforms. However, setting up and managing a learning environment can be a complex task since it covers a wide range of technical, organizational, and pedagogical topics. This ranges from basic user and course management, to configuring plugins and design elements, all the way to system settings, performance optimization, events frameworks, and so on.

This book concentrates on basic tasks such as how to set up and configure Moodle and how to perform day-to-day administration activities, and progresses on to more advanced topics that show you how to customize and extend Moodle, manage courses, cohorts, and users, and how to work with roles and capabilities. You'll learn to configure Moodle plugins and ensure your VLE conforms to pedagogical and technical requirements in your organization. You'll then learn how to integrate the VLE via web services and network it with other sites, including Mahara, and extend your system via plugins and LTI. By the end of this book, you will be able to set up an efficient, fully fledged, and secure Moodle system.

Style and approach

The book takes a problem-solution approach to fall in line with your day-to-day operations. This is a one-stop reference for any task you will ever come across when administering a Moodle site of any shape and size.

Sie lesen das E-Book in den Legimi-Apps auf:

Android
iOS
von Legimi
zertifizierten E-Readern

Seitenzahl: 573

Veröffentlichungsjahr: 2016

Bewertungen
0,0
0
0
0
0
0
Mehr Informationen
Mehr Informationen
Legimi prüft nicht, ob Rezensionen von Nutzern stammen, die den betreffenden Titel tatsächlich gekauft oder gelesen/gehört haben. Wir entfernen aber gefälschte Rezensionen.



Table of Contents

Moodle 3 Administration Third Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
eBooks, discount offers, and more
Why subscribe?
Preface
What this book covers
What you need for this book
Who this book is for
VLE job functions
Obligations and skill sets of a VLE administrator
Conventions
Reader feedback
Customer support
Downloading the color images of this book
Errata
Piracy
Questions
1. Moodle Installation
Moodle installation – an overview
Choosing the best setup
Moodle prerequisites
Hardware requirements
Software requirements
Installation in a LAMP environment
Downloading Moodle
Creating the Moodle database and the data directory
Using a hosted server
Using the command line
Creating the Moodle data directory
Running the installer script
Finalizing the installation
Setting up the cron process
Installation in a Windows environment
Installation in a Mac OS X environment
Installation via the Command Line Interface
Updating Moodle
Manual update
Creating a backup
Creating your new Moodle system
Running the update script
Updating Moodle via CLI
Update notifications
Summary
2. The Moodle System
Moodle architecture
The LAMP architecture
The Moodle layer
Code and data locations
Finding your way around in Moodle
The Navigation bar
The administrator search facility
Moodle bookmarks
Moodle Docs and Help
File management
The Moodle file management interface
Uploading files
Private files
To link or to copy?
File types
The upload limit
Web host file management
File management via the file system repository
Summary
3. Courses, Users, and Roles
A high-level overview
Moodle courses
Moodle users
Moodle roles
Summary
4. Course Management
Course categories
Course categories – an overview
Managing course categories
Adding course categories
Course sub-categories
Deleting course categories
Organizing courses and categories
Creating courses
Course requests – enabling teachers to ask for new courses
Managing courses in bulk
Forms of enrolment
Internal enrolment
Manual enrolment
Self enrolment
Guest access
Cohort enrolment and synchronization
Database-driven enrolment
LDAP
External databases
Flat files
The IMS Enterprise file
Meta courses – sharing enrolment across courses
Enrolment with payment
PayPal
Summary
5. User Management
User profiles
Profile fields
General category
User picture category
Additional names
Interests category
Optional category
Creating user-defined profile fields
Profile categories
Profile fields
User preferences
Standard user actions
Browsing users
Filtering users
Bulk user actions
Manual accounts
Adding individual users
Bulk uploading and updating of users and their pictures
The text file format
Required fields
Password
Optional fields
Custom profile fields
Enrolment fields
Cohort fields
System role
Special fields
Uploading users
Setting default values and templates
Loading of data
Uploading user pictures
Manual account settings
Cohorts
User authentication
Common authentication settings
Email-based self-registration
The LDAP server
The LDAP server settings
Data mapping
External databases
Connection settings
Data mapping
Other authentication mechanisms
External Moodle authentication methods
Internal Moodle authentication methods
Usernames – best practice
Summary
6. Managing Permissions – Roles and Capabilities
Moodle predefined roles
Contexts
Assigning roles
The System context
The Course Category context
The Course context
The Module context
The Block context
The User context
The Front page context
Multiple roles
Capabilities
Role definitions
Modifying roles
Overriding roles
Creating custom roles
Example roles
The parent/mentor role
Testing new roles
Roles management
Allowing roles assignments and overrides
Assigning of default roles
Moodle role assignment – best practice
Summary
7. Moodle Look and Feel
An overview of the look and feel
Site versus Dashboard
Customizing your front page
The front page settings
Arranging front page blocks
Logging in from a different website
Other front page items
Front page users
Front page filters
Front page reports
The front page backup and restore
Front page questions
The default Dashboard and Profile pages
Customizing navigation
Replacing the front page
Moodle themes
Fixed width versus fluid versus responsive themes
Selecting a Moodle theme
Theme types
Theme settings
Customizing themes
Theme customization basics
The Moodle editor
Configuring the Atto editor
Extending the functionality of tables
Supporting mathematical equations
Adding some awesomeness
Accessibility
Guaranteeing accessibility through Moodle themes
Accessibility support through the Moodle editor
Support for a screen reader
Summary
8. Moodle Plugins
Plugins – an overview
Module plugins
Activity modules
Configuring blocks
Configuring filters
Moodle repositories
Internal repository plugins
External repository plugins
Data storage repositories
Application repositories
Moodle portfolios
Miscellaneous plugins
Course formats
Question types and behaviors
Availability restrictions
Licences
Plagiarism prevention
Installing third-party plugins
Third-party software – an overview
Good add-ons and bad add-ons
Popular add-ons
Organizational decisions around plugins
Installing third-party add-ons
Installing the Collapsed Topics format plugin via the web interface
Installing the Configurable Reports plugin manually
Installing the Certificate module via Git
Installing plugins via the command line
Keeping plugins up to date
Uninstalling third-party add-ons
Summary
9. Moodle Configuration
Collaboration
Configuring blogs
Supporting comments
Managing tags
Configuring and managing badges
Adding badges
Supporting the LTI consumers and producers
Localization
Languages, idiomas, 语言, and اللغات
Language packs
Language settings
Language customization
Multilingual content
Calendaric information
Calendars
Time zones
Grades and gradebook settings
Miscellaneous educational settings
Communication
Synchronous communication
Instant messaging
Video conferencing
Asynchronous communication
Messaging configuration
Outbound messaging
E-mail configuration
The Jabber configuration
Mobile notifications
Default message output
Inbound messaging
Support contact
Configuration RSS feeds
Experimental settings
Summary
10. Moodle Logging and Reporting
Moodle's logging framework
Events
Event lists
Event monitoring rules
The log manager
The log store
Reports
An overview of reporting
Moodle's reporting facilities
Live logs
Error reports
Course and user reports
Statistics

Statistics settings
Statistics view
Report generation
Configurable reports
The Totara report builder
Data analysis
Web log analyzers
Google Analytics and Piwik
Miscellaneous reports
Summary
11. Moodle Security and Privacy
Security – an overview
Security notifications
Moodle notifications
Security report
User security
Access to Moodle
Self-registration
Guest access
Protection of user details
Course contacts
Moodle passwords
Security in roles
Spam prevention
Data and content security
Content created within Moodle
Visibility of content
Site policy
Antivirus
System security
Configuration security
Access to dataroot
The cron process
HTTP security
The IP blocker
Moodle privacy
Information stored about users
Information available to other users
Summary
12. Moodle Performance and Optimization
An overview of performance and optimization
The Moodle content
Content creation
Content volume
Content types
Moodle's filter settings
Moodle Universal Cache
The MUC background
Cache types
Cache stores
Cache definitions
MUC configuration and testing
The Moodle system settings
Session handling
Cron management and scheduled tasks
Module settings
Gradebook optimization
Chat optimization
Forums
Miscellaneous settings
Course backups
Log files
System paths
Front page courses
Roles and users
Moodle performance profiling and monitoring
Built-in profiling
System profiling
Summary
13. Backup and Restore
The course-level backup and restore
The course backup
Initial settings
Backup default values
Content-only backup versus full-course backup
Schema settings
Confirmation and review
Finalizing a backup
The course restore
The restore destination
Restore settings
The backup schema
Finalizing a restore
The course Import
Site-level backups
Backup settings
Backup reports and notifications
The backup strategy
Drawbacks of site-level backups
System-level backups
Moodle backups
The Moodle software
The Moodle data
Snapshot creation
Uses of backup and restore
The year-end procedure
Course templates
Summary
14. Moodle Admin Tools
Web-based admin tools
Upgrade tools
Database tools
Other tools
Command Line Interface (CLI)
Moosh – the Moodle shell
Moodle Adminer
Summary
15. Moodle Integration
Web services overview
Web services in Moodle
Enabling web services for external systems
Create a specific user
Check user capability
Select a service
Add functions
Select a specific user
Create a token for a user
Enable developer documentation
Test the service
Enabling web services for users
The Moodle mobile web service
Customizing styles for the Moodle app
Mobile app notifications
Summary
16. Moodle Networking
Networking overview
Networking prerequisites and security
Required PHP extensions
Networking security
Peer-to-peer networks
Adding a peer
Peer services
Profile fields
Network authentication
Allowing roaming
Network servers block
Network enrolment
Moodle hubs
Integrating Mahara or Totara Social
Mahoodle!
Mahara networking
Adding Mahara to Moodle
The Mahara portfolio
The Moodle Community Hub (Moodle.net)
Summary
A. Configuration Settings
Configuration reference: an overview
Configuration reference: administration settings
Configuration reference: system settings
Default parameters
Optional parameters
Index

Moodle 3 Administration Third Edition

Moodle 3 Administration Third Edition

Copyright © 2016 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the author, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: September 2008

Second Edition: October 2011

Third Edition: February 2016

Production reference: 1240216

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78328-971-4

www.packtpub.com

Credits

Author

Alex Büchner

Reviewers

Chad Outten

Ian Rifkin

Shashikant Vaishnav

Acquisition Editors

Reshma Raman

Rebecca Youe

Content Development Editor

Rashmi Suvarna

Technical Editor

Shivani Kiran Mistry

Copy Editor

Sonia Cheema

Project Coordinator

Suzanne Coutinho

Proofreader

Safis Editing

Indexer

Tejal Daruwale Soni

Production Coordinator

Nilesh Mohite

Cover Work

Nilesh Mohite

About the Author

Alex Büchner is the co-founder and technical director of the Platinum Totara, Moodle, and Mahara partner, Synergy Learning. He has been involved in system and database administration for more than two decades and has been administering virtual learning environments of all shapes and sizes since their advent on the educational landscape.

Alex holds a PhD in computer science and an MSc in software engineering. He has authored over 50 international publications, including two books, and is a frequent speaker on Totara, Moodle, Mahara, and related open source technologies. His first two books on Moodle Administration by Packt Publishing have become the de facto standard on the topic.

The best learning experience in Moodle is provided when communication and collaboration is utilized. The same has been applied in writing this book, which would not have been possible without the support of the Packt editorial team.

I would like to thank the reviewers for their constructive feedback provided during the reviewing process. This book would not be the same without your comments and suggestions.

Special thanks must go to all my colleagues at Synergy Learning. No matter how tricky the Moodle problem, somebody will always be there to come up with a rock solid solution.

I have to thank all our customers. Without you, we wouldn't be aware of all the Moodle hitches and glitches that are out there. Keep them coming!

Last but not least, I have to thank AB + ab for their support and patience while I have been hiding away writing yet another book. I will make up for it. Promise!

About the Reviewers

Chad Outten is a qualified educator and technologist with more than 15 years of experience in the education and ICT sectors. He is the Managing Director at My Learning Space, an Australian e-learning company, and has worked closely with high-profile organizations such as eBay, Shell, Ricoh, iiNet, Rip Curl, and Queensland Health, among a diverse range of clients to help them improve staff performance and business outcomes through better learning, training, and compliance programs.

Chad is a Moodle certified teacher and has acted as a mentor and assessor for the internationally recognized Moodle Teacher Certification program. He is a proud member of the esteemed Particularly Helpful Moodlers and Quality Assurance Testers groups at moodle.org, and in 2008, he organized the Australian Moodle Moot. Chad is passionate about e-learning, admires educators, and understands the value of a good learning management system to address the challenges of 21st century education.

Ian Rifkin has experience with servers and applications (purchased, open source, and custom), and acts as a release engineer for his institution. He has in-depth knowledge of web application development and middleware integrations, including identity management systems. He is a developer and manager who has intimate knowledge of command-line Unix environments.

He has worked with Moodle as a student, faculty member, and administrator. Currently, he is employed as the software systems manager at Brandeis University, where he manages a small web team. He also holds a part-time adjunct instructor role for the Graduate Professional Studies division at Brandeis University, where he teaches web content management and web application development.

Ian holds an M.Sc. degree in information technology management and a BA degree in anthropology (with a minor in Internet studies). In his spare time, he enjoys computer games, genealogy research, baking, gardening, and spending time with his wife, Valerie, and son, Caleb.

Shashikant Vaishnav was born and brought up in Jodhpur, a desert town in Rajasthan, India. He's involved with a London-based Seedcamp-supported start-up, Shoprocket. It's an e-commerce system delivered over the cloud and integrates seamlessly into any application with a single line of code.

He is been involved with Moodle for quite a long time as a student. While an undergraduate, he participated in Google's Summer of Code program and integrated Apache Solr with Moodle. He also participated as a mentor in Google's Code-in program for the Sugar Labs organization.

He finished his graduation from the Government Engineering college Bikaner with a bachelor's of engineering and technology degree in computer science in 2013. His focus on academics aside, he harbors a deep interest in music and sports.

He loves to blog about his experiences with open source technology, travel, and life. He reads spiritual books, indulges in photography, and hacks around with open source projects.

He previously collaborated with Packt Publishing as a technical reviewer of Git Version Control Cookbook and Moodle 3 Administration Third Edition.

www.PacktPub.com

eBooks, discount offers, and more

Did you know that Packt offers eBook versions of every book published, with PDF and ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a print book customer, you are entitled to a discount on the eBook copy. Get in touch with us at <[email protected]> for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a range of free newsletters and receive exclusive discounts and offers on Packt books and eBooks.

https://www2.packtpub.com/books/subscription/packtlib

Do you need instant solutions to your IT questions? PacktLib is Packt's online digital book library. Here, you can search, access, and read Packt's entire library of books.

Why subscribe?

Fully searchable across every book published by PacktCopy and paste, print, and bookmark contentOn demand and accessible via a web browser

Preface

Since its launch in 2002, Moodle has become the benchmark that every learning management system is measured against. It has won a wide range of international accolades and established itself as an ecosystem for a large number of educational tools and services.

Moodle 3 Administration, Third Edition is a complete, practical guide for administering Moodle sites. It covers setting up Moodle, configuration, and day-to-day administrative tasks as well as advanced options to customize and extend Moodle.

The author, who has been at the cutting edge of Moodle administration since its advent, has adopted a problem-solution approach to bring the content in line with your day-to-day operations. The practical examples will help you to set up Moodle for large organizations and small courses alike.

This is a one-stop reference for tasks that you will come across when administering a Moodle site of any shape or size. It not only covers core Moodle functionality, but also third-party tools and add-ons that will increase your flexibility and efficiency even further when dealing with administrative duties.

Why another book on Moodle administration? Since the second edition of the title in 2011, the system has been modified and extended significantly to cover all the relevant new functionality in Moodle 3.

What this book covers

Moodle has grown into a mature, sophisticated, and complex software system. As a result, Moodle Administration covers a wide range of topics. A fun way to demonstrate the various subjects is in the form of a tube/subway/metro/ underground map (under the Creative Commons license by Synergy Learning):

Chapter 1, Moodle Installation, tells you about the most suitable Moodle setup for your organization, including software and hardware requirements. You will learn how to install Moodle in three environments, namely, LAMP/Unix, Windows, and Mac OS, before Moodle updates options are covered in detail. Throughout the chapter, you will also learn how to perform some of the described operations using the Moodle Command-line Interface (CLI), Git, and Moodle Shell (Moosh).

Chapter 2, The Moodle System, covers the building blocks of the learning platform. First, we cover the Moodle architecture, that is, the main Moodle components and where its data and code is stored. We then provide you with the skills to find your way a round in Moodle via its intuitive user and administration interface. Finally, we deal with the management of files, which includes Moodle's standard file management, web host file management, and file management via the file system repository.

Chapter 3, Courses, Users, and Roles, gives you an overview of Moodle courses, users, and roles. It covers the basics of the three key concepts and demonstrates how the three core elements are inherently intertwined.

Chapter 4, Course Management, shows you how to set up new courses (also in bulk) and organize them in categories. The remainder of the chapter deals with an array of enrolment options, covering Moodle's internal enrolment (manual, self, and guest), cohort enrolment and synchronization, database-driven enrolment, for instance, via LDAP, meta courses, and payment-driven enrolments.

Chapter 5, User Management, explains how to manage users on your system. We first cover what user profiles look like and how they can be extended before presenting (manual and bulk) standard user actions. We then explain how to add users to Moodle manually, that is, one-by-one, and via batch upload before dealing with cohorts. Then, you will learn about a plethora of authentication mechanisms that Moodle equips us with. Finally, we discuss the best practices of user naming schemes.

Chapter 6, Managing Permissions – Roles and Capabilities, guides you through permission management. It applies roles and capabilities to users in different contexts. We will cover the assignment of roles, modification of existing roles, and creation of new roles before we deal with any administrative role-related settings.

Chapter 7, Moodle Look and Feel, tells you how to adapt your Moodle system to bring it in line with the corporate branding of your organization. We will cover the customization of the front page, basic creation of Moodle themes, and support for mobile devices via responsive themes. You will also learn how to configure the Moodle editor and support users with accessibility requirements.

Chapter 8, Moodle Plugins, explains in detail how to extend your Moodle system via third-party add-ons. You will be able to distinguish between good add-ons and not-so-good add-ons before we cover extensions that are popular with other users. We will then cover how to install, configure, and uninstall third-party add-ons. Plugins that are covered are activities, blocks and filters, repositories, portfolios, text editors, licenses, question types and behaviors, plagiarism prevention, licenses, and availability restrictions.

Chapter 9, Moodle Configuration, deals with the educational and technical configuration of your Moodle system. Pedagogical topics that are covered are badges, collaboration (blogs, comments and tags), LTI, localization, grades and gradebook settings, and a number of miscellaneous parameters. Technical subjects that are dealt with include synchronous communication (instant messaging and video conferencing), asynchronous communication (inbound and messaging as well as RSS feeds), and a number of experimental settings.

Chapter 10, Moodle Logging and Reporting, equips you with the tools that you require in order to interpret and analyze the vast amount of usage data that Moodle is collecting. You will learn about the logging framework and monitoring facilities provided by Moodle that include activity reporting, user tracking, and some basic statistics. Then, we will take a look at third-party tools that cover learning analytics, report generation, web log analyzers, and live data trackers such as Google Analytics and Piwik.

Chapter 11, Moodle Security and Privacy, focuses on ensuring that the data in your Moodle system is protected from any misuse. You will learn about security notifications, user security, data and content security, and system security. We will conclude the chapter with information on privacy and data protection concerns.

Chapter 12, Moodle Performance and Optimization, makes sure that your Moodle system runs to its full potential. We will cover configuring, monitoring, and fine-tuning your virtual learning environment for maximum speed. You will learn how to optimize Moodle content before we focus on system parameters, namely, caching via the Moodle Universal Cache (MUC), session handling, cron management, scheduled tasks, module settings, and miscellaneous settings. We also present some basic performance profiling and monitoring tools.

Chapter 13, Backup and Restore, focuses on ensuring that your data would not be lost in the event of a disaster. We will cover course backups, site backups, system backups, and restoring data from the taken data archives.

Chapter 14, Moodle Admin Tools, covers Moodle admin tools that assist you with certain specific administrative tasks. These include web-based helpers such as upgrade and database tools as well as CLI scripts. We will also be looking at some add-ons, especially the powerful Moodle Shell, Moosh.

Chapter 15, Moodle Integration, looks at ways to integrate Moodle with other systems via web services. We will provide information about the basic concepts of Moodle web services before you learn how to set up external systems and users controlling Moodle. This also covers the support for the official mobile app.

Chapter 16, Moodle Networking, tells you how to connect disparate Moodle and Totara systems either in a peer-to-peer setup or via a Moodle hub. You will also be able to apply the learned networking techniques to connect the popular open source e-portfolio system, Mahara, and the social learning tool, Totara Social, to Moodle. We will further show you how to connect to Moodle.net and set up your own community hub.

Appendix, Configuration Settings, provides you with a list of parameters that can be modified in Moodle's configuration file and the impact that each of these values will have. The areas covered are Administration Settings and System Settings.

What you need for this book

For Moodle, you must have the following components up and running on your server (at the time of writing for version 3.0):

Database: MySQL (version 5.5.31 or later with the InnoDB storage engine activated), PostgreSQL (9.1 or later), Microsoft SQL Server (2008 or later), Oracle (10.2 or later), or Maria DB (5.5.31 or later)Web server: Apache is the preferred web server, but Microsoft IIS is also possiblePHP 5.4.4 or later is required to run Moodle (PHP 7 is supported as well)

PHP extensions: Moodle makes use of a number of PHP extensions—most of which are compiled in PHP by default.

Depending on your specific setup, additional software and hardware might be required.

Who this book is for

This book is written for technicians and systems administrators as well as academic staff, that is, basically for anyone who has to administer a Moodle system. Whether you are dealing with a small-scale local Moodle system or a large-scale multi-site Virtual Learning Environment (VLE), this book will assist you with any administrative tasks. Some basic Moodle knowledge is helpful, but not essential.

VLE job functions

A Moodle administrator is basically a VLE administrator who manages a Moodle system. A quick search through recruitment agencies specializing in the educational sector reveals a growing number of dedicated job titles that are closely related to VLE administration. A few examples are as follows:

VLE administrator (or LMS administrator or MLE administrator)VLE support officerVLE architectVLE engineerVLE coordinator

The list does not include functions that regularly act in an administrative capacity, such as IT support. It also does not include roles that are situated in the pedagogical field, but often take on the work of a VLE administrator, such as learning technologists or e-learning coordinators.

A VLE administrator usually works very closely with the staff who has the responsibility for the administration of IT systems, databases, and networks. It has been proven beneficial to have some basic skills in these areas. Additionally, links are likely in larger organizations where content management systems, student information management systems, and other related infrastructure is present.

Given this growing number of VLE administration-related roles, let's look at some key obligations of the job functions and what skills are essential and desirable.

Obligations and skill sets of a VLE administrator

The responsibilities of a VLE administrator differ from organization to organization. However, there are some obligations that are common across installations and setups:

User management (learners, teachers, and others)Course management (prospectus mapping)Module management (functionality provided to users)Look and feel of the VLE (often carried out by a web designer)Year-end maintenance (if applicable)Beginning-of-year setup (if applicable)Support teaching staff and learners

In addition to these VLE-specific features, you are required to make sure that the virtual learning environment is secure and stable and performs well. Backups have to be in place, monitoring has to be set up, reports about usage have to be produced, and regular system maintenance has to be carried out.

If you host your own system, you will be responsible for all of the listed tasks and many more. If your VLE is hosted in a managed environment, some of the tasks closer to system level will be carried out by the hosting provider. So, it is important that they have a good understanding of Moodle. Either way, you will be the first person to be contacted by staff and learners if anything goes wrong, if they require new functionality, or if some administrative task has to be carried out.

Note

With great power comes great responsibility!

While a range of e-learning-related activities are now taught as part of some academic and vocational qualifications (for instance, instructional design or e-moderation), VLE administration per se is not. Most VLE administrators have a technical background and often have some system or database administration knowledge. Again, it entirely depends on whether you host your VLE locally or externally. The administration skills of a remotely hosted system can be learned by anybody with some technical knowledge. However, for an internally hosted system, you will require a good working knowledge of the operating system on which the VLE is installed, the underlying database that is used, the network in which the VLE has to operate, and any further components that have to work with the learning system.

Conventions

In this book, you will find a number of text styles that distinguish between different kinds of information. Here are some examples of these styles and an explanation of their meaning.

Code words in text are shown as follows:

If the cron.php script is invoked over HTTP (either using wget or curl), more memory is used than calling directly via the php –f command.

Any command-line input and output is written as follows:

There are two ways you can create a so-called database dump from a MySQL database, either via command line or via Moodle's optional database interface.

The simplest syntax for the command line tool is:

mysqldump -u <user> -p <database> > backup.sql

New terms and important words are introduced in a bold-type font. Words that you see on the screen, in menus or dialog boxes for example, appear in our text like this:

Clicking on the Enabled protocols link in the overview table will guide you to Plugins | Web services | Manage protocols screen.

Note

Warnings or important notes appear in a box like this.

Tip

Tips and tricks appear like this.

Reader feedback

Feedback from our readers is always welcome. Let us know what you think about this book—what you liked or disliked. Reader feedback is important for us as it helps us develop titles that you will really get the most out of.

To send us general feedback, simply e-mail <[email protected]>, and mention the book's title in the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or contributing to a book, see our author guide at www.packtpub.com/authors.

Customer support

Now that you are the proud owner of a Packt book, we have a number of things to help you to get the most from your purchase.

Downloading the color images of this book

We also provide you with a PDF file that has color images of the screenshots/diagrams used in this book. The color images will help you better understand the changes in the output. You can download this file from http://www.packtpub.com/sites/default/files/downloads/Moodle3AdministrationThirdEdition_ColorImages.pdf.

Errata

Although we have taken every care to ensure the accuracy of our content, mistakes do happen. If you find a mistake in one of our books—maybe a mistake in the text or the code—we would be grateful if you could report this to us. By doing so, you can save other readers from frustration and help us improve subsequent versions of this book. If you find any errata, please report them by visiting http://www.packtpub.com/submit-errata, selecting your book, clicking on the Errata Submission Form link, and entering the details of your errata. Once your errata are verified, your submission will be accepted and the errata will be uploaded to our website or added to any list of existing errata under the Errata section of that title.

To view the previously submitted errata, go to https://www.packtpub.com/books/content/support and enter the name of the book in the search field. The required information will appear under the Errata section.

Piracy

Piracy of copyrighted material on the Internet is an ongoing problem across all media. At Packt, we take the protection of our copyright and licenses very seriously. If you come across any illegal copies of our works in any form on the Internet, please provide us with the location address or website name immediately so that we can pursue a remedy.

Please contact us at <[email protected]> with a link to the suspected pirated material.

We appreciate your help in protecting our authors and our ability to bring you valuable content.

Questions

If you have a problem with any aspect of this book, you can contact us at <[email protected]>, and we will do our best to address the problem.

Chapter 1. Moodle Installation

Let's get started by installing Moodle.

After providing an overview that describes which setup is most suitable, software as well as hardware requirements are outlined.

We will then cover the following installations:

Installing Moodle in a LAMP/Unix environmentInstalling Moodle in a Windows environmentInstalling Moodle in a Mac OS X environmentInstalling Moodle via the Command Line Interface (CLI)Upgrading Moodle manually and via CLI and Git

You will only need to study the section(s) of the operating system(s) you are planning to use. Moodle can be scaled from a single instructor to an entire institution. We will only be able to cover the most common installations and present solutions to some common problems. We also have to assume that you are familiar with basic system administration of the operating system on which you will be installing Moodle.

Moodle installation – an overview

Before we start installing Moodle, you have to decide which setup is right for your organization. Once you have come to a conclusion, there are a number of prerequisites that you have to provide before we can get started.

Choosing the best setup

There are a number of different environments in which you can set up Moodle. The three main criteria that should dictate the choice of the correct setup are:

Flexibility: If you want to have full control over your system, be able to tweak system settings, and make frequent changes to the setup, you are best suited to host your own server. However, if your preferred choice is to only administer Moodle while somebody else is looking after the operating system, the web server, and backups, it is better to opt for a professionally-hosted setup, and particularly, the offerings provided by the authorized Moodle Partners.Scalability: This is entirely driven by the number of concurrent users, that is, the number of active learners and teachers logged in to Moodle at the same time. A Moodle on a single-processor desktop computer will not be able to cope with hundreds of simultaneously logged-in users. A load-balanced cluster, on the other hand, would be overkill for a small institution with a handful of learners. The following table provides some indicative setups for different types of educational organizations, and is by no means complete:

Max number of concurrent users

Recommended setup

1 (to experiment locally)

Desktop, laptop, memory stick

20 (single class)

Public server or https://moodlecloud.com/en/

100 (small school / company)

Shared server

250 (large school / company)

Dedicated server

500 (medium-to-large college)

Dedicated application and database servers

+500 (university/corporate)

Load-balanced cluster

Please bear in mind that these are only indicative numbers, which are not written in stone, and also depend on the other factors mentioned here. The mentioned hosting option on https://moodlecloud.com/en/ offers free Moodle hosting by Moodle HQ with a number of limitations: maximum number of users is set to 50, storage capacity is limited to 200 MB, there is no ability to install plugins, and there is advertisement displayed throughout the site. This is a good way to try out Moodle, but not intended for production sites.

Organizations require a server (either dedicated or shared) that is either hosted in-house or externally. If you decide to go down the hosted route, it is highly recommended to avoid a cheap hosting package as their systems are not optimized for Moodle usage. This will have a significant impact on the performance of the system, especially with an increasing number of users.

Cost: Budgetary constraints will certainly play an important role in your setup. Unless you already have the appropriate infrastructure in place, it is likely to be more cost-effective to host your Moodle system externally as it saves you from having to purchase servers and provide a 24/7 data connection that caters to your learners' needs. Licensing cost is significantly higher if you use commercial operating systems, web servers, and database systems, instead of an open source solution. Either way, Moodle is designed to support a wide range of possible infrastructures suitable to your organization's IT policy.

In addition to these three key criteria that usually influence the decision about the underlying infrastructure, there are other factors that will have an impact on your decision, such as in-house expertise, compatibility with other systems, personal preference, and existing resources.

We will cover the three most popular operating systems for hosting Moodle—Linux, Windows, and Mac OS. For other setups such as on a memory stick, in a virtualized environment, or a larger multi-server cluster, please consult your local Moodle Partner (https://moodle.com/). Some hosting companies offer quick one-click installations (often via the Fantastico installer, which usually doesn't contain the latest version). While the resulting Moodle system is sufficient for experimental sites, it is certainly unsuitable for production environments.

Moodle prerequisites

There are a number of hardware and software requirements that have to be satisfied before we can start installing Moodle.

Hardware requirements

These requirements apply if you host Moodle yourself or if it is hosted on an external server (shared, virtual, dedicated, or clustered). On cheaper hosting packages, the hardware configuration is often insufficient to run Moodle efficiently:

Disk space: Moodle takes up between 150 MB and 200 MB of disk space. However, this only provides you with an empty system and does not take into account the space you require for any learning resources. The faster the disks, the better. RAIDed disks are recommended, but are not essential on smaller installations.Memory: The (absolute) minimum requirement is 256 MB for a single-user instance, but more is necessary in a multiuser setup. A good rule of thumb is to have 1 GB of RAM for every 10-15 concurrent users. You have to double this calculation on Windows-based systems due to the higher overhead of the operating system.

Tip

The more RAM the better; the faster the RAM the better.

CPU: Processor type and speed is important too, but not as important as RAM. As always, the faster the CPU the better, and the more cores a CPU has, the more powerful it will be.Network: While Moodle can run on a standalone machine, its full potential is in a networked environment. A fast network card is essential, as is good upload and download speed if the LMS is accessed over the Internet.

Software requirements

While it is recommend to have the latest version installed, for Moodle 3, you must have the following components up and running on your server (release specific notes can be found at https://docs.moodle.org/dev/Releases):

Database: Moodle officially supports four database systems: MySQL (version 5.5.31 or later utilizing the ACID-compliant InnoDB storage engine), PostgreSQL (version 9.1+), MariaDB (version 5.5.31+) Microsoft SQL Server (version 2008+), and Oracle (version 10.2+).Web server: Apache is the preferred web server option, but Moodle works well with any other web server that supports PHP such as Microsoft IIS.PHP: PHP 5.4.4 is the minimum PHP version to run Moodle 3. PHP 7 is also supported. There are a number of PHP settings, which you might have to change in the php.ini or .htaccess file (see https://docs.moodle.org/en/Installing_Moodle for more details).PHP extensions: Moodle makes use of a number of extensions, most of which are compiled into PHP, by default. They are as follows:
Compulsory extensions: curl, ctype, dom, gd, hash, iconv, json, pcre, simplexml, spl, xml, zip, and zlibRecommended extensions: intl, mbstring, openssl, tokenizer, soap, and xmlrpcConditional extensions: mysql, odbc, pgsql, (depending on database) and ldap, ntlm, and so on (depending on authentication mechanism used)

Depending on your specific setup, additional software and hardware might be required. It is assumed that the database, web server, PHP, and its extensions have been installed correctly as this is not a VLE administrator task. Once this is the case, we are ready to go.

Tip

Internet Explorer 8 is not supported by Moodle. A modern web browser (Internet Explorer 9+, Firefox 25+, Google Chrome 30+, or Safari 6+) is required to access Moodle.

Installation in a LAMP environment

Moodle is developed in Linux using Apache, MySQL, and PHP (known as theLAMP platform). If you have a choice, this is the preferred environment to use. There is ongoing debate whether PostgreSQL is the more suitable database option, but we will stick with MySQL as this is the system most administrators are familiar with. Also, some organizations are bound to Microsoft SQL or Oracle. If this is the case, please refer to the respective installation guide as this is beyond the scope of this book.

Downloading Moodle

Go tohttps://download.moodle.org/ and select Latest release in the Standard Moodle section:

By the time of reading, a newer version is likely to be available. If you wish to go with the 3.0 version this book has been written for, select Other supported releases on the right; otherwise, feel free to go with the latest stable build; most content in this book will still be applicable.

There are five types of builds available on Moodle's download site:

Latest release: For the current version of Moodle, there are two releases—the latest stable build and the latest official release. The latest stable version is created weekly (every Wednesday) and is the best choice for a new server. The latest official release contains the stable build as well as new fixes, but the version will not have gone through the weekly code review and might contain unresolved issues.Other supported releases: Older versions than the current one are maintained by the Moodle development team and bug fixes are back-ported for 12 months after release. Sometimes, the newly-added functionality is back-ported. Version 3.1 will be a long-term support release and will be supported for 3 years.Security-only-supported releases: For one further release, critical fixes that will impact on security or data loss will be provided, but no other bug fixes will be back-ported.Legacy releases: For older versions, the last build is made available. However, these are not maintained any further.Development release: Moodle also offers you the option to download beta releases of the software (if available) and also the latest development release. These should only be downloaded for testing or development purposes, never in production environments!

Each version is made available in the two compressed formats: TGZ (use the tar command to uncompress) and ZIP (requires unzip). You can either download them by clicking on the respective link or, if you have (secure) shell access, retrieve the file directly by using the wget command:

wget http://download.moodle.org/moodle/moodle-latest.zip

Note

The location where you install Moodle is referred to as dirroot.

If you make use of Moodle Shell (MOOSH), which is described in more detail in Chapter 14, Moodle Admin Tools, you can use the following command to download the latest stable branch of Moodle:

moosh download-moodle

Once you have moved the file to the location where you want to install it on your web server (dirroot), extract the file using the unzip command (or tar xvfz if you downloaded the TGZ version). In a hosted environment, you might have to use the uncompressing method provided by the web administration interface (cPanel, Plesk, or any bespoke system):

unzip moodle-latest.ziptar xvfz moodle-latest.tgz

If you place the entire folder in your web server documents directory, the site will be located at www.yourwebserver.com/moodle. To access your site from www.yourwebserver.com, copy the contents directly into the main web server's documents directory.

Note

The URL via which Moodle is accessed is referred to as wwwroot.

Once this has been successfully done, you have to create the database that Moodle uses to store its data.

Creating the Moodle database and the data directory

Moodle requires a database where it can store its information. While it is possible to share an existing database, it is highly recommended to create a separate database for Moodle. This can either be done via a web interface, as provided for hosted servers, or via the Unix command line.

Using a hosted server

Most hosting providers provide a dedicated web interface to carry out basic database operations. Alternatively, you can use phpMyAdmin, an open source software that allows you to manage MySQL databases over the Web. It is part of most Linux distributions and many control panels, such as CPanel or Plesk. (phpMyAdmin is often configured not to allow new databases to be created. If this is the case, you have to create the database from the database manager in your control panel.)

Once you have started phpMyAdmin, go to the Databases section and create a new database using the UTF collation (utf8_general_ci collation). You don't need to create any tables; Moodle will be populating the database during the installation process.

While you can use an existing database user account, it is good practice to create a dedicated user for the Moodle database. This step is carried out in the Privileges section.

Tip

Do not use the MySQL root account for your Moodle database!

phpMyAdmin allows you to perform both steps—creating a database and adding a new user—in a single action, as shown in the following screenshot. We will create a user, book, and also check the Create database with same name and grant all privileges option:

Using the command line

If you don't have access to a web interface to create MySQL databases and user accounts or if you prefer to use a Linux shell, you can perform these steps via the command line:

Start the database command line tool by entering mysql -root -p and enter the password at the prompt.Create a database here (called moodle) by entering CREATE DATABASE moodle; (all MySQL commands have to be completed with a semicolon).Set the default character and collation order to UTF8 by entering ALTER DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ ci;.Create a user and password (here user@localhost and password, respectively) and grant database access permissions by entering GRANT SELEC T, INSERT, UPDATE, DELETE, CREATE, CREATE TEMPORARY TABLES, DROP, INDEX, ALTER ON moodle.* TO user@localhost IDENTIFIED BY 'password';.Exit the MySQL command tool by entering QUIT.

It is necessary to reload the grant tables using the following command line:

mysqladmin -u root -p reload

You have now completed the database setup. All we have to do now is to create Moodle's data directory before we are ready to start the installation of Moodle itself.

Creating the Moodle data directory

Moodle stores most of its information in the database you have just created. However, any uploaded files such as assignments or pictures are stored in a separate directory. This data directory in Moodle is usually referred to as moodledata.

Note

The location which holds your Moodle data files is referred to as dataroot.

Later on, the Moodle installer will attempt to create this directory but, in some setups, this is not possible due to security restrictions. To be on the safe side, it is better to create moodledata manually or via a web-based file manager, as provided by some systems:

Tip

It is crucial to create moodledata on your server where it cannot be accessed publicly, that is, outside your web directory.

Create the directory by entering mkdir moodledata. This is where all the uploaded files by course authors and learners will be stored, so make sure this is dimensioned properly. You might also consider to create this in a separate partition.Change permissions recursively by entering chmod –R 0770 moodledata (if you use 0777, then everybody on the server will have access to the files).Change the user and group of the directory to that of your web server (usually apache or www-data and nobody or www-data, respectively) by entering chown –R apache:nobody moodledata.

If you don't have permission to create the data directory in a secure location, create the .htaccess file in your home directory containing the following two lines:

order deny,allow deny from all

This will prevent files from being accessed without the user having permissions to do so.

Running the installer script

The installer script performs two main actions—populating the database and creating the configuration file, config.php. The Moodle installer is initiated by entering the URL of wwwroot (the location where you copied Moodle) into your web browser; Moodle will recognize that it hasn't been installed yet and start the process automatically.

The Moodle installer has to set a session cookie. If your browser has been configured to trigger a warning, make sure you accept that cookie.

The first screen lets you choose the language to be used during installation. This is not the locale used for Moodle, only the language for the installation:

The following screenshot displays the expected values for Web address of the site (wwwroot), Moodle directory (dirroot) and Data directory (dataroot); you might have to modify the data directory entry if the location of your moodledata differs:

If dataroot cannot be located or does not have the correct permissions, an error message with details will be displayed. The same applies if dataroot is accessible directly via the Web and is hence, not secure.

In the following screenshot, you have to select which database you wish to use. On my system, only the drivers for MySQL, MariaDB, and PostgresSQL are installed. To use other database systems such as Oracle or MS SQL Server, the respective driver has to be installed first.

This interface is using the configuration details previously established. The following screenshot will look slightly different if you have chosen a different database driver to the native MySQL:

Setting

Description

Database host

The default is localhost (127.0.0.1), which is correct if the database is located on the same server as the web server. If it is located on a separate server, specify the IP address (preferably unresolved, to improve performance).

Database name

Database user

Database password

This is the database name, user name, and password you enter when you run the mysql command.

Tables prefix

All the tables the Moodle installer is going to create will be prefixed with mdl_. This should only be changed if you run multiple Moodle installations using the same database.

Database port

This is the port of the database in your setup. It is usually empty or 3306.

Unix socket

If selected, the connection takes place through the file system as opposed to TCP/IP. A Unix socket file connection is marginally faster than TCP/IP, but it can only be used when connecting to a server on the same computer.

Once you see the following screen, you will know the Moodle configuration file, config.php, has been successfully created. If the creation of the configuration file fails (usually because of incorrect permissions), the installer will display the content of the configuration file. You will have to copy the text from the screen and paste it to config.php in your dirroot.

Before Moodle can proceed with the installation, you have to agree to the GPL license agreement. You find the full license text at https://docs.moodle.org/dev/License.

Once you have accepted the license agreement, the Moodle installer checks to see whether certain components are installed. Not all the modules are compulsory—see the Moodle prerequisites section in this chapter and notice on screen. The installer also verifies the key PHP settings. If any of the tests are not passed, it is important that you go back to the Software requirements section to resolve any problems and restart the installation process after the issues have been fixed. Otherwise, some features may not work or the installer will not continue, depending on the importance of the module.

Two common issues that arise when using MySQL are the prerequisite to use the InnoDB Barracuda file format and file-per-table mode. In both cases entries have to be added to the [mysqld] section in /etc/mysql/my.cnf (innodb_file_format=Barracuda and innodb_file_per_table, respectively).

Once this screen has been confirmed, the Moodle installer will create all the tables in the database. This process might take a few minutes.

Once the table creation and population has been concluded, you will see the screen to set up the administrator account. The default Username is admin, which should be changed for security reasons. The self-explanatory fields you have to fill in are New password, First name, Surname, Email address, City/town, and Select a country. All other fields are explained in great detail in Chapter 5, User Management.

The last screen of the installation script asks you to enter some front page settings, namely, the Full site name, Short name for site and Front page description. These front page settings can be modified later (see Chapter 7, Moodle Look and Feel). Additionally, the installer allows you to turn on Self registration. Leave this disabled for now, until you have covered Chapter 5, User Management.

Once this information has been entered and the screen has been confirmed, you are ready to start using Moodle. However, it is recommended to finalize the installation and to set up the execution of the Moodle maintenance script.

Finalizing the installation

To make sure that Moodle is running without problems, go to Notifications in the Site administration menu in the Settings block:

In the case of my installation, there are two issues—a PHP setting has a value that is not recommended (I have to change this in the php.ini file) and the so-called cron maintenance script has not run for at least 24 hours. We will solve that mystery after we have registered our site. Other messages might appear in the Notifications area, and you should resolve them in due course.

Moodle provides some statistics about its usage on https://moodle.net/stats/. To be included in these figures, you have to register your Moodle site. Registration(below the Notification link) with https://moodle.org/ (MOOCH) is optional and free, and you decide what information will be made public. Even if you opt out of providing any usage patterns for your site, it is still highly recommended to register, as you will get occasional notices, for example, advanced security alerts:

The settings for the registration screen are as follows:

Field

Description

Name

The name of your site, as you just specified in the front page settings.

Privacy

You have these options:

Please do not publish this site(default)Publish the site name onlyPublish the site name with a link

Description

This is a short narrative describing your site.

Language

This is the language your site is published in.

Postal address/Country

Enter your address and select the country in which your organization is located.

Geolocation

This is the latitude and longitude of your location.

Administrator

Enter your name.

Phone/Email address

Enter your contact phone number and e-mail address.

Contact form

By default, Moodle creates a form for other Moodle users to contact you—this can be turned off.

Email notifications

By default, Moodle e-mails you important information, such as upgrades and security issues.

Site Url, Moodle version, Moodle release and More information

This is the data sent to https://moodle.org/ on a regular basis. This information will not be displayed to the public and will only be used for statistical purposes.

Setting up the cron process

Moodle has to perform a number of background tasks on a regular basis. The script that performs these tasks is known as a cron script, and is executed by the cron process. An entire page has been dedicated to this in the Moodle documentation; you can find it at https://docs.moodle.org/en/Cron. It is important that you set up the cron process; otherwise, any timed Moodle features, such as scheduled backups, sending forum notifications, statistics processing, and so on, will not work.

The script, cron.php, is located in the admin directory and can be triggered manually through a web browser (unless your security settings have been changed). Once executed, the output from the script (http://yoursite/admin/cron.php) is shown on screen and you have to navigate back to your Moodle system manually.

Most control panels allow you to set up scheduled tasks via a cron job management tool. Bear in mind that this is not part of Moodle but a part of your hosting package. The following screenshot is from the widely used Plesk system, which executes the script every five minutes:

There are a number of ways to call the cron script. The most popular option in a Linux environment is wget –q –O /dev/null http://<yoursite>/admin/cron.php (see Command in the preceding screenshot). However, if this does not suit your setup, check out https://docs.moodle.org/en/Cron for alternatives.

The interface shown earlier creates an entry in crontab, a file located in the /etc directory that contains all the system-wide cron entries. This file can also be edited manually using crontab -e, but be careful to get the syntax right!

Tip

On larger sites, it is recommended to run the cron process every minute!

This concludes the installation process for Moodle in a LAMP environment. If you have come across any problems that have not been covered in these instructions or if your setup differs from the one described, go to https://docs.moodle.org/en/Installing_Moodle, where more installation details are provided and exceptions are covered in great detail.

Installation in a Windows environment

XAMPP is a free Apache distribution that contains MySQL and PHP (as well as Perl) and exists for a number of operating systems. The Moodle distribution for Windows makes full use of XAMPP and is located at https://download.moodle.org/windows. The installation works on all the latest Windows PCs and server variants.

The XAMPP-based Moodle distribution is only suitable for servers with a small number of users. For larger Windows installations, you have to install Moodle manually. This involves installing a database server (MS SQL or any other support system), a web server (Microsoft IIS or Apache), and PHP, separately. You can find details about this process at https://docs.moodle.org/en/Windows_installation.

Once downloaded, follow these ensuring steps:

Copy the distribution to a folder on your PC and unzip the archive in your folder of choice.Make sure any software that uses port 80 (such as Skype) is not running, or change its settings to point it to an alternative port.Double-click on StartMoodle.exe.If you have a firewall installed, allow any shown services to be executed.
The XAMPP service will run in the Windows background.Go to your web browser and enter http://localhost to your address bar.You will see the same installer being launched as the one described for the LAMP environment. All values have already been populated; all you have to do is navigate through all the screens until you see the familiar Setup administrator account. This process will take a few minutes.Enter the administrator details and select Update profile.Enter the Front Page settings for your site.Check that no warnings are displayed in the Notifications section of the Site administration area in the Settings block.

That's it! Your Moodle system is now up and running and you are now able to use Moodle locally or from a web browser on another machine as long as your IP address is accessible via the network you are on.

To stop using Moodle, double-click on StopMoodle.exe. If you have a firewall installed, you might have to allow the program to be executed.

Instead of starting and stopping Moodle manually, you can start Apache and MySQL automatically as Windows services. In the server directory of your Moodle system, you find an executable called service.exe, which you have to run with the -install parameter as administrator, as in the following example:

C:/moodle/server/service.exe -install

Installation in a Mac OS X environment

MAMP is a free distribution that contains Apache (and Nginx), MySQL, and PHP for Mac OS X. Like its Windows counterpart, the Moodle distributions for Mac OS X (10.4 or higher) are only intended for local installations and not for production environments. There is also a link on the download site for Mac server installation.

Moodle4Mac is available as universal binaries using MAMP, which is located at https://download.moodle.org/macosx. Once downloaded, follow these steps:

Double-click on the downloaded DMG file to start the installation. This will open a screen as follows, which explains the remainder of the installation process:Drag the MAMP folder on this screen onto the