Installation guide for Windows using EasyPHP
- Return to Windows installation
Moodle requires that a webserver, PHP and a supported database be installed to run on Windows. This may be achieved by using EasyPHP, a package that bundles all the software you need in the form of Apache (webserver), PHP and MySQL (database) into a single Windows application. Please note however, that EasyPHP is not designed to be used for a production server. Here are the steps from start to finish.
Preparation
- Firstly, if you have ever installed MySQL before (even as part of another package), uninstall it all, delete all the MySQL files and make sure you delete c:\my.cnf and c:\windows\my.ini. You might want to do a search and delete ANY file called my.cnf or my.ini.
- If you've ever installed PHP before delete any files called php4ts.dll from around your Windows directory, as well as any files called php.ini.
Get EasyPHP
- Download EasyPHP from here: EasyPHP 1.7 (approx 10 Mb). You may want to try the later EasyPHP 1.8 (approx 9 Mb) or the latest version EasyPhp DevServer 1.13
Install EasyPHP 1.7
- Run the downloaded file: easyphp1-7_setup.exe. The installation process is in French but is much like installing any other Windows program - I advise accepting the defaults and letting it all install. Note: that "Suivant" means Next and "Oui" means Yes.
- At the end of the install leave the checkbox selected to "Lancer EasyPHP" (Start EasyPHP) and hit the "Terminer" button. You might be taken to a information web page which you can safely ignore.
- If all went well - congratulations! Apache, PHP and MySQL are all installed and running! You should see a black E in your toolbar tray. You can right click on it to get a menu which will let you control the running programs, but you won't be needing that for now.
- Some things may be in French and you may prefer English. You can download this file http://www.easyphp.org/telechargements/dn.php?F=indexUS_1.7 which contains English versions of www and home folder in the EasyPHP1-7 folder. These can be copied over the default files.
Install EasyPHP 1.13
- Run the downloaded file: EasyPHP-DevServer-13.1VC9-setup.exe (or whatever the current version is). It will prompt you to select your language. I choose all of the other defaults.
- At the end of the install leave the checkbox selected to "Start EasyPHP".
- If you experience an error starting EasyPHP, it might be because inetinfo.exe is running. Bring up Windows Task Manager by typing CTRL+ALT+DELETE. Find inetinfo.exe in the task list, highlight it and click "End Process." Right-click on the EASYPHP icon and restart the process.
- If all went well - congratulations! Apache, PHP and MySQL are all installed and running! You should see a black E in your toolbar tray. Right click on it to get a menu which will let you control the running programs.
- Configure PHP to extend the max execution from 30 seconds to something more, otherwise your installation will fail due to exceeding this 30 second time limit.
Create a database
- The next thing you need to do is to set up a database for Moodle to use. Right-click the black E in the toolbar tray and choose Administration, then click DB Management (beside PHPMyAdmin). Alternatively, using a browser, go to http://localhost/mysql/ (note the final slash).
- If asked for a username, use "root" with a blank password. You should see a phpMyAdmin web interface that allows you to create a new databases and user accounts.
- Create a new database by typing "moodle" into the field and hitting the "Create" button and don't forget to specify a utf-8 collation for the database being created. That was easy!
- You can also create a new user to access your database if you want. This can be a bit tricky for a first-time user, so you might just want to use the existing user "root" with no password in your Moodle config for now, and fix this later.
Get Moodle!
- You're ready to install Moodle! Download the latest release of Moodle from Moodle.org, then unzip the archive.
Installing Moodle
- Copy your moodle files into C:\Program Files\EasyPHP\www. You can either copy the entire moodle directory (ie C:\Program Files\EasyPHP\www\moodle) or copy all the contents of the moodle directory. If you choose this second option then you will be able to access your Moodle home page using http://localhost/ instead of http://localhost/moodle/.
- Make a new empty folder somewhere else for Moodle to store uploaded files in, eg: C:\moodledata
- Go into your Moodle folder. Make a copy of config-dist.php, and call it config.php
====Edting the the config.php file==== Edit config.php using a text editor (Notepad will do, just be careful that it doesn't add unwanted spaces at the end).
- Put in all your new database info:
- $CFG->dbtype = 'mysql';
- $CFG->dbhost = 'localhost';
- $CFG->dbname = 'moodle';
- $CFG->dbuser = 'root';
- $CFG->dbpass = '';
- $CFG->dbpersist = true;
- $CFG->prefix = 'mdl_';
- And put in all your file paths
- $CFG->wwwroot = 'http://localhost/moodle'; // Use an external address if you know it.
- $CFG->dirroot = 'C:\Program Files\EasyPHP\www\moodle';
- $CFG->dataroot = 'C:\moodledata';
- Save config.php - you can ignore the other settings if there are any.
The web based installer
- You're nearly there now! The rest of the setup is all web-based. Visit http://localhost/moodle/admin/ with your browser to continue the setup via your browser.
- To use zip files with Moodle (for example the backups use zip) you might need to enable "zlib". You can do this by going to your EasyPHP directory (C:\Program Files\EasyPHP), and running the program phpini.exe in there. Put a mark in the checkbox next to "zlib.dll". Close that window, then go to the black E in your toolbar and right-click it to get a menu - select "Restart" from this menu.
Setting a Cron
- Lastly, you need to set up some sort of cron. See the Installation guide for more details on this.
Tips
If you don't or can't use EasyPHP, here are a few tips to make sure your PHP is set up correctly and avoid common problems:
- Make sure you enable the GD module so Moodle can process images - you may have to edit php.ini and remove the comment (;) from this line: 'extension=php_gd2.dll'.
- Make sure you enable the Zlib module so that you can create and unpack zip files from within Moodle.
- Make sure sessions is turned on - you may have to edit php.ini and fix the directory for session.save_path - instead of the default "/tmp" use a Windows directory like "c:/temp".