Note: You are currently viewing documentation for Moodle 1.9. Up-to-date documentation for the latest stable version is available here: Complete install packages.

Complete install packages

From MoodleDocs
Revision as of 12:04, 31 March 2008 by Ken Wilson (talk | contribs) (→‎First steps: Typo)

Complete install packages are available from Moodle Downloads, located on a tab for each of the operating systems. The packages are designed for new installations on a server or standalone computer. Please note the standard distributions only contain the Moodle code.

This document provides instructions for using the Windows packages. Separate instructions are available for Mac OS X packages.

For installation on a Windows 2000 or Windows 2003 server it is good practice to perform a manual install (see the manual installation section in Windows Installation).

After installing the Windows package, note that there are other downloads (e.g. additional modules and plugins) that may involve more customization of configuration files.

The complete install packages allow Moodle to be installed, along with the prerequisites that includes a web server, database and scripting language (Apache, MySQL and PHP in this case). Several versions of the complete install package are available. The instructions on the download page provide guidance on which version is likely to be most suitable.

Note: The latest complete install package version components, may not be backwardly compatible. Always check version compatibility of each component if you intend to develop materials on a later version of Moodle than the version installed on your "main" Moodle site. In short, complete install packages are designed for first time install on a "clean" machine.

System requirements

 + 256 MB RAM (minimum), 512 MB RAM (recommended)
 + 160 MB free Fixed Disk (more space will be needed depending on user uploads)
 + Windows 98/ME (minimum)
 + Windows NT/2000/XP (recommended)

Install complete package

As noted above the complete install package is a zip file that contains Moodle and programs to create a webserver called Apache, MySQL and PHP.

First steps

Step 1: Download Windows packed-zip file from Moodle.

Step 2: Unpack the file you downloaded to a drive or partition of your choice and let the default create C:\moodle or W:\moodle or something like this. It is a good practice at this point to rename the C:\moodle to something like C:\Web or C:\Xampplite or even C:\Moodle19 . There will be a folder under this called \moodle.

Step 3: Start the "setup_xampp.bat" in the top folder. This will configure Xammplite. Note: XAMPP makes no entries in the windows registry and no settings for the system variables.

Step 4: Now you are ready to start your webserver. Use the Xampp_start file which you should find in the top directory (for example C:\Xampplite). Once the Xampp_start program is open, don't close it, use Xampp_stop for that purpose. Xampp start and stop program(s) control both Apache and MySQL programs that operate the webserver.

  • Alternatively you can individually start and stop Apache and MySQL with their bat files found in the top folder such as C:\xampplite .

Step 5: Start your browser and type http://127.0.0.1 or http://localhost in the address bar. You will either start your first time Moodle installation or if it is already install enter your homepage.

Start the Moodle installation

  • In your web browser, type the path to the folder containing the Moodle files in te address bar – in this example it’s http://localhost/moodle, in the above example it would be http://localhost.


  • The initial install page is displayed.
Xampp24.gif
  • Choose your preferred language (English is used in this example) and click the “Next” button.
  • A diagnostic report is displayed – hopefully it will look like this, if not you may need to address some issues.
Xampp25.gif


  • Click the “Next” button to continue.
  • The paths for your Moodle installation are shown – accept the ones that are shown on your screen.
Xampp26.gif


  • Click the “Next” button to continue.
  • What you enter in the "Host Server" field depends on what you intend to use the new Moodle installation for.

If you are just going to use it for local testing, then use 'localhost'. If you are going to test the new installation on a LAN, and will be accessing it from other machines on that LAN, then put the private IP address or network name of the serving machine, followed by a forward slash and moodle: Host Server - 192.168.1.1/moodle If you are going to test the installation on the internet, then you will need to put the public ip address followed by a forward slash and moodle: your_ip_address/moodle or you can put your domain name here instead.

  • In the next fields, we enter the database settings. The fields are populated with some suggested values.
  • We strongly recommend you place a user name and password in this screen. (Don't forget them).
  • DO NOT USE THE “ROOT” USER WITHOUT A PASSWORD FOR PRODUCTION INSTALLATIONS AS THIS CREATES A SECURITY VULNERABILITY
Xampp27.gif


  • When the fields have been populated, click the “Next” button to continue.
  • Provided the Moodle folder is writable, a message confirming the configuration has been completed will be displayed.
Xampp29.gif
  • Click the “ Continue” button to proceed.

The Moodle copyright / licence notices are displayed.

Xampp30.gif


  • Click the “Yes” button to continue. In most cases this will be followed by a series of screens that have a continue button on the bottom. In Moodle 1.8 look for the "Unattended" checkoff box. This will press the continue button at the bottom of the screen for you. This process stops with Admin user profile settings which needs to be filled out, then goes to the site setting page.

Congratulations - Moodle has been installed

This finishes the installation of a complete package. Type http://localhost in your browser and Moodle will open.

Your next task will be to configure Moodle. See Administrator_documentation#Configuration or Administrator_documentation. Don't worry, it is easy to change any of the settings once Moodle is running.

Security matters (A MUST READ!)

As mentioned before, XAMPP is not meant for production use but only for developers in a development environment. The way XAMPP is configured is to be open as possible and allowing the developer anything he/she wants. For development environments this is great but in a production environment it could be fatal. Here a list of missing security in XAMPP:

The MySQL administrator (root) has no password. The MySQL daemon is accessible via network. phpMyAdmin is accessible via network. Examples are accessible via network.

To fix most of the security weaknesses simply call the following URL:

http://localhost/security/

The root password for MySQL + phpMyAdmin and also a XAMPP directory protection can be established here.

Note that on the Windows installer package, some (all?) of these issues have been fixed already by default and the above link does not work.

If in doubt, more info is here

Apache and MySQL tweaks

Installing Apache and MySQL as services

(This is only for NT4 | Windows 2000 | Windows XP operating systems)

\xampplite\apache\apache_installservice.bat = ==> Install Apache 2 as service

\xampplite\apache\apache_uninstallservice.bat = ==> Uninstall Apache 2 as service

\xampplite\mysql\mysql_installservice.bat = ==> Install MySQL as service

\xampplite\mysql\mysql_uninstallservice.bat = ==> Uninstall MySQL as service

==> After all Service (un)installations, please restart your system!


Apache Notes

You should use the apache_start and apache_stop bat files to start and stop apache from running.

Troubleshooting

If you find that Apache is very flaky, with the page often not loading properly or even at all (especially on localhost), try adding these lines to the end of C:\your_moodle_installer_directory\apache\conf\httpd.conf

 EnableSendfile Off
 EnableMMAP Off
 Win32DisableAcceptEx

MySQL notes

(1) The MySQL server can be started by double-clicking (executing)

   mysql_start.bat. This file can be found in the same folder you installed
   xampp in, most likely this will be C:\xampplite\.
   The exact path to this file is X:\xampplite\mysql_start.bat, where
   "X" indicates the letter of the drive you unpacked xampp into.
   This batch file starts the MySQL server in console mode. The first 
   intialization might take a few minutes.
   
   Do not close the DOS window or you'll crash the server!
   To stop the server, please use mysql_shutdown.bat, which is located in the same
   directory.

(2) To use the MySQL Daemon with "innodb" for better performance,

   please edit the "my" (or "my.cnf") file in the /xampplite/mysql/bin 
   directory or for services the c:\my.cnf for windows NT/2000/XP. 
   In there, activate the "innodb_data_file_path=ibdata1:30M"
   statement. Attention, "innodb" is not recommended for 95/98/ME.
   
   To use MySQL as Service for NT/2000/XP, simply copy the "my" 
   / "my.cnf" file to C:\my, or C:\my.cnf. Please note that this 
   file has to be placed in C:\ (root), other locations are not permitted. Then
   execute the "mysql_installservice.bat" in the mysql folder. 	
    	

(3) MySQL starts with standard values for the user id and the password. The preset

   user id is "root", the password is "" (= no password). To access MySQL via PHP
   with the preset values, you'll have to use the following syntax:
   mysql_connect("localhost","root","");
   If you want to set a password for MySQL access, please use of mysqladmin.
   To set the passwort "secret" for the user "root", type the following:
   \xampplite\mysql\bin\mysqladmin -u root password secret
   
   After changing the password you'll have to reconfigure phpMyAdmin to use the
   new password, otherwise it won't be able to access the databases. To do that,
   open the file config.inc.php in \xampplite\phpmyadmin\ and edit the
   following lines:    
   
   $cfg['Servers'][$i]['user']            = 'root';   // MySQL user
   $cfg['Servers'][$i]['auth_type']       = 'http';   // HTTP authentificate
   So first the 'root' password is queried by the MySQL server, before phpMyAdmin 
   may access.
 	    	
 

Have a lot of fun! Viel Spaß! Bonne Chance!

See also