<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://docs.moodle.org/31/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=T100ss</id>
	<title>MoodleDocs - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://docs.moodle.org/31/en/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=T100ss"/>
	<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/Special:Contributions/T100ss"/>
	<updated>2026-05-11T23:41:23Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.5</generator>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=File_upload_size&amp;diff=122383</id>
		<title>File upload size</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=File_upload_size&amp;diff=122383"/>
		<updated>2016-03-04T10:21:28Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Modifying the php.ini file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}Probably the most frequently asked question in the Moodle.org Using Moodle forums is &amp;quot;How do I increase the upload file size limit?&amp;quot; The changes that need be made are the same in all versions of Moodle, just in different OS&#039; they need be made in different places. Upload file sizes are restricted in a number of ways and each one in this list restricts the following ones:&lt;br /&gt;
&lt;br /&gt;
 Server level&lt;br /&gt;
 Moodle site level&lt;br /&gt;
 Course level&lt;br /&gt;
 Activity level&lt;br /&gt;
&lt;br /&gt;
This is a contentious issue, mainly because you might think that it should be set inside the Moodle. Unfortunately, this is not so, these are environment issues that need to be set in the server and PHP folders, Moodle cannot work outside itself. &lt;br /&gt;
&lt;br /&gt;
==Physical access to Server==&lt;br /&gt;
These instructions assume you have full physical and administrative access to your server. If you are using a hosted server then you will probably need to look into other ways to increase your file upload size. &lt;br /&gt;
&lt;br /&gt;
There are positives and negatives to both methods below. If you modify the php.ini file then the changes will effect all php applications on your server. Since PHP5 you can only have one php.ini file on your server. The php.ini method will work with all web servers though. The .htaccess method will only effect the folder and all subfolders that it is placed in, but you must have certain settings enabled in Apache.&lt;br /&gt;
&lt;br /&gt;
==Restricting the File size - how it works==&lt;br /&gt;
The Host may set a limit on the maximum file upload size in the Server environment, which you may override if the Host allows you to. PHP has a setting that it uses to limit the size of the file that it handles in upload. The Host has set that figure in the php.ini based on their particular perceptions and their clientele need. This size appears in Moodle in the &#039;&#039;&#039;Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&#039;&#039;&#039; drop-down combo box. You can change this at any time to suit your site need. In the Course Settings page, there is also a further restriction that can be made. At no time can the Course setting over-ride the Site setting, nor can the Site setting over-ride the php.ini setting, which cannot over-ride the Server setting. The only exception to this rule is that you can manipulate both the Server and the PHP settings, and how to do that is described below.&lt;br /&gt;
&lt;br /&gt;
==Modifying the php.ini file==&lt;br /&gt;
These instructions show you how to change the file upload size by editing your php.ini file.&lt;br /&gt;
&lt;br /&gt;
For the most part these instructions amount to the following.&lt;br /&gt;
In the file /etc/php5/apache2/php.ini you need to change &amp;quot;post_max_size&amp;quot;, &amp;quot;upload_max_filesize&amp;quot; and &amp;quot;max_execution_time&amp;quot; to values that suit your needs using whatever editor you are used to. &lt;br /&gt;
&lt;br /&gt;
Below are some line by line instructions for various installations of Moodle.&lt;br /&gt;
&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions assume that you have installed the standard Moodle package, PHP 5 and Apache 2 via apt-get and left it all as a default install. If you have compiled yourself I presume that you will know where your php.ini files are!&lt;br /&gt;
&lt;br /&gt;
You need to edit the following three settings in your php.ini file located at: /etc/php5/apache2/&lt;br /&gt;
Here are a set of instructions to follow line by line.&lt;br /&gt;
&lt;br /&gt;
*Type &amp;quot;sudo nano /etc/php5/apache2/php.ini&amp;quot;&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;post_max_size&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;upload_max_filesize&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;max_execution_time&amp;quot; &lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and O&lt;br /&gt;
*Press Ctrl and X&lt;br /&gt;
*Type sudo apachectl restart&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size NGINX] system administrators should also add client_max_body_size=XXX to the &amp;quot;http&amp;quot; section of their nginx main configuration file. ([https://rtcamp.com/tutorials/php/increase-file-upload-size-limit/#change-in-nginx-config see more info])&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
====XAMPP on Mac Instructions====&lt;br /&gt;
&lt;br /&gt;
These are instructions for how to do this for Moodle on a Mac using the [http://download.moodle.org/macosx/ XAMPP sample download package available]. (This is not for a OS X production server.)&lt;br /&gt;
&lt;br /&gt;
* Close down Apache and MySQL if they are running via the XAMPP Control app and close the XAMPP Control app &lt;br /&gt;
* Open Finder and go to Applications&lt;br /&gt;
* Navigate down and open the folder &#039;&#039;XAMPP&#039;&#039; / &#039;&#039;xamppfiles&#039;&#039; / &#039;&#039;etc&#039;&#039;&lt;br /&gt;
* Open the file &#039;&#039;php.ini&#039;&#039; with TextEdit (or another plain text editor)&lt;br /&gt;
* Search for the &#039;&#039;post_max_size&#039;&#039; setting and up this from 128M (the default) to more; 500M is the maximum&lt;br /&gt;
* Do the same for &#039;&#039;upload_max_filesize&#039;&#039; (make the numbers the same)&lt;br /&gt;
* Search for the &#039;&#039;max_execution_time&#039;&#039; setting and up this to 300 (or more if you get timeouts on uploads)&lt;br /&gt;
* Save the php.ini file &lt;br /&gt;
* restart Apache and MySQL as usual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: You may get a &amp;quot;permission denied&amp;quot; error when saving the php.ini file unless you are logged in with  admin access to your Mac. To work around this, you can set the &#039;&#039;/etc&#039;&#039; directory in which the php.ini file is located to be writable temporarily. For how to do that, see [http://answers.yahoo.com/question/index?qid=20090115235753AA4DtJ0 here] or [http://www.ehow.com/how_2314896_fix-permissions-mac-os-x.html here].&lt;br /&gt;
&lt;br /&gt;
====Windows XP and Server 2003 Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions presume that you have downloaded the latest PHP 5.3.x Windows zip package and extracted it to C:\PHP. If you have installed PHP to another location then change all references to &amp;quot;C:\PHP&amp;quot; to the location you installed PHP too.&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Download and install any text editor that can save the file in a UTF-8 format, [http://www.crimsoneditor.com Crimson Editor] is one such, NotePad++ is another, use that instead of either Wordpad or Notepad! The issue is that WordPad or Notepad will include hidden characters that may not be compatible with the requirements of PHP.   &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
*Open C:\PHP&lt;br /&gt;
*Right Click the &#039;&#039;&#039;php.ini&#039;&#039;&#039; file in this folder and choose &amp;quot;Open with...&amp;quot; selecting your editor of choice. &lt;br /&gt;
*Press Ctrl + F and type &amp;quot;post_max_size&amp;quot; (click Find...&amp;quot;, where needed) &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;upload_max_filesize&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;max_execution_time&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and S or the save button. &lt;br /&gt;
*Exit your editor. &lt;br /&gt;
*Restart your webserver to reload PHP with the edited changes. &lt;br /&gt;
**&#039;&#039;&#039;For IIS&#039;&#039;&#039;&lt;br /&gt;
**Open the Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;iisreset /RESTART&amp;quot;&lt;br /&gt;
**For &#039;&#039;&#039;Apache 2 and Windows XP&#039;&#039;&#039;&lt;br /&gt;
**Go to Start &amp;gt; All Programs &amp;gt; Apache &amp;gt; Restart&lt;br /&gt;
**&#039;&#039;&#039;For Apache 2 and Windows Server&#039;&#039;&#039;&lt;br /&gt;
**The following command will work as long as you have installed Apache 2 as a service on your Windows Server&lt;br /&gt;
**Open your Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;httpd -k restart&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; These instructions also cover the Xampp Windows installer. Just replace C:\PHP with C:\Moodle\server\php and to restart your Moodle with a normal stop-start.&lt;br /&gt;
&lt;br /&gt;
==Modifying the apache config file==&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
You may also need to edit the config.php file in the moodle directory:&lt;br /&gt;
*Type &amp;quot;gksudo nautilus&amp;quot; to get root permissions&lt;br /&gt;
*Navigate to /etc/moodle&lt;br /&gt;
*Open apache.conf&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php5.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php4.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Save file&lt;br /&gt;
*Type sudo /etc/init.d/apache2 restart&lt;br /&gt;
&lt;br /&gt;
===Modifying the .htaccess file===&lt;br /&gt;
&lt;br /&gt;
The following instructions will only work on an Apache web server, and also the Apache server must have Overrides allowed. Traditionally, you could only use .htaccess files when PHP was run as a module of Apache, but with Apache 2.2, this appears to no longer be the case. You can now use the .htaccess file in either module or cgi forms. As well, allowing the use of .htaccess files will cause a performance hit on the server, not a desirable outcome either - so check with your Host. &lt;br /&gt;
&lt;br /&gt;
The .htaccess file is a distributed configuration file, that is, it can be used on a per-folder basis to configure each user&#039;s folder and sub-folders. You cannot alter the &amp;quot;AllowOverrides&amp;quot; directive in the Apache configuration file with a .htaccess file, only the Host can set that manually. Usually the Host will place a .htaccess file into your site Root if they do allow you to override the server settings. You can edit it the same as below, and the overrides you set will work. Alternatively, you may create your own .htaccess file in your text editor. It may also be called something else, like .config. If you have any file that starts with a ., you might want to open it in your text editor, just out of curiosity. &lt;br /&gt;
&lt;br /&gt;
Create a file called .htaccess in Moodle&#039;s main directory (where &#039;index.php&#039; is located, not the &#039;moodledata&#039; directory) that contains the following information:&lt;br /&gt;
&lt;br /&gt;
 php_value upload_max_filesize 20971520&lt;br /&gt;
 php_value post_max_size 20971520&lt;br /&gt;
 php_value max_execution_time 600&lt;br /&gt;
&lt;br /&gt;
20971520 is the integer value for 20Mb. You can use the following site to [http://www.onlineconversion.com/computer_base2.htm convert MegaBytes to Bytes].&lt;br /&gt;
&lt;br /&gt;
For a more complete description of how to edit the .htacess file, look at this page, [http://httpd.apache.org/docs/current/howto/htaccess.html Apache Tutorial: .htaccess files]&lt;br /&gt;
&lt;br /&gt;
===Modifying the IIS 7.0/7.5 configuration (Windows Server 2008, Windows Server 2008 R2)===&lt;br /&gt;
First increase activity and request time outs (allows large files to succeed on slow connections)&lt;br /&gt;
 FastCGI Settings &amp;gt; Edit (Right-click on PHP application)&lt;br /&gt;
 Set Process Model &amp;gt; Activity Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
 Set Process Model &amp;gt; Request Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
Next set &#039;Maximum allowed content length&#039;&lt;br /&gt;
 Request Filtering &amp;gt; Edit Feature Settings:&lt;br /&gt;
 Set &#039;Maximum allowed content length&#039; to your desired file size (in bytes) e.g. &#039;536870912&#039; for 512MB (default is approximately 28.6MB)&lt;br /&gt;
&lt;br /&gt;
==Hosted Server==&lt;br /&gt;
Things can be a little different with a hosted server for uploaded and downloaded file size.  You are probably going to  to be told to create or change a .htaccess file, or to modify a php.ini file.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|It might be a good idea to talk to with your service provider before you attempt anything.  They probably have instructions on &amp;quot;how to&amp;quot; and may have their own limits for uploaded file size. Some hosts measure the file size in gigabytes and others in megabytes.  If you are unhappy with their limits, then check your contract and consider changing your provider to one that has a limit and price that you like.&lt;br /&gt;
|}   &lt;br /&gt;
&lt;br /&gt;
===.htaccess with hosted server===&lt;br /&gt;
The one purpose of an .htaccess file is to override the the current limitations of both the server and the php.ini file.  Your hosted server should inform you where that file needs be placed in your Moodle, but generally in the root is sufficient. They may already have a standard file you can use, if so, use it - but perhaps not.  &lt;br /&gt;
&lt;br /&gt;
To the .htaccess file add the lines:&lt;br /&gt;
  php_value upload_max_filesize 128M&lt;br /&gt;
  php_value post_max_size 128M&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
This will limit uploads to 128MB, but you can make it any size you agree with your provider. The wording may vary slightly, according to the demands of the server.&lt;br /&gt;
&lt;br /&gt;
===php.ini with hosted server===&lt;br /&gt;
Some servers will not allow you to change the moodle root .htaccess file and tell you to use a php.ini file for php directives.  Here you can use the instruction located in the section above called [[File_upload_size#Modifying_the_php.ini_file|Modifying the php.ini file]].&lt;br /&gt;
&lt;br /&gt;
Find the php.ini file in your moodle subfolder on your hosted server. You might want to copy the file as a backup just in case.  Edit php.ini, find &amp;quot;upload_max_filesize&amp;quot; and post_max_size in the code.  After the = change the number.  Here the max filesize is 20 megabytes.  &lt;br /&gt;
&lt;br /&gt;
 upload_max_filesize = 20M&lt;br /&gt;
 post_max_size = 20M&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Still not changed? Some hosts using cpanel have a php config program under services/software. Use the &amp;quot;Single php.ini&amp;quot; option and make sure you note the location of the php.ini file to modify. This changes the .htaccess file in the same area and thus the server limit for all programs using php.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Administration_FAQ#How_do_the_limits_on_uploaded_files_work.3F|Administration FAQ Doc page]]&lt;br /&gt;
*[[Site_policies#Maximum_uploaded_file_size|Site Policies Doc page]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=39625 Detailed instructions to increase the maximum allowed size for uploaded files] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=97907 Instructions to increase maximum allowed size on hosted servers] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=124441 Help on changing the maximum upload size when installing Moodle via apt-get] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[es:Tamaño de archivo subido]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:FAQ|File]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=File_upload_size&amp;diff=122382</id>
		<title>File upload size</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=File_upload_size&amp;diff=122382"/>
		<updated>2016-03-04T10:16:18Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Modifying the php.ini file */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}Probably the most frequently asked question in the Moodle.org Using Moodle forums is &amp;quot;How do I increase the upload file size limit?&amp;quot; The changes that need be made are the same in all versions of Moodle, just in different OS&#039; they need be made in different places. Upload file sizes are restricted in a number of ways and each one in this list restricts the following ones:&lt;br /&gt;
&lt;br /&gt;
 Server level&lt;br /&gt;
 Moodle site level&lt;br /&gt;
 Course level&lt;br /&gt;
 Activity level&lt;br /&gt;
&lt;br /&gt;
This is a contentious issue, mainly because you might think that it should be set inside the Moodle. Unfortunately, this is not so, these are environment issues that need to be set in the server and PHP folders, Moodle cannot work outside itself. &lt;br /&gt;
&lt;br /&gt;
==Physical access to Server==&lt;br /&gt;
These instructions assume you have full physical and administrative access to your server. If you are using a hosted server then you will probably need to look into other ways to increase your file upload size. &lt;br /&gt;
&lt;br /&gt;
There are positives and negatives to both methods below. If you modify the php.ini file then the changes will effect all php applications on your server. Since PHP5 you can only have one php.ini file on your server. The php.ini method will work with all web servers though. The .htaccess method will only effect the folder and all subfolders that it is placed in, but you must have certain settings enabled in Apache.&lt;br /&gt;
&lt;br /&gt;
==Restricting the File size - how it works==&lt;br /&gt;
The Host may set a limit on the maximum file upload size in the Server environment, which you may override if the Host allows you to. PHP has a setting that it uses to limit the size of the file that it handles in upload. The Host has set that figure in the php.ini based on their particular perceptions and their clientele need. This size appears in Moodle in the &#039;&#039;&#039;Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&#039;&#039;&#039; drop-down combo box. You can change this at any time to suit your site need. In the Course Settings page, there is also a further restriction that can be made. At no time can the Course setting over-ride the Site setting, nor can the Site setting over-ride the php.ini setting, which cannot over-ride the Server setting. The only exception to this rule is that you can manipulate both the Server and the PHP settings, and how to do that is described below.&lt;br /&gt;
&lt;br /&gt;
==Modifying the php.ini file==&lt;br /&gt;
These instructions show you how to change the file upload size by editing your php.ini file.&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions assume that you have installed the standard Moodle package, PHP 5 and Apache 2 via apt-get and left it all as a default install. If you have compiled yourself I presume that you will know where your php.ini files are!&lt;br /&gt;
&lt;br /&gt;
You need to edit the following three settings in your php.ini file located at: /etc/php5/apache2/&lt;br /&gt;
Here are a set of instructions to follow line by line.&lt;br /&gt;
&lt;br /&gt;
*Type &amp;quot;sudo nano /etc/php5/apache2/php.ini&amp;quot;&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;post_max_size&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;upload_max_filesize&amp;quot; &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl and W and type &amp;quot;max_execution_time&amp;quot; &lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and O&lt;br /&gt;
*Press Ctrl and X&lt;br /&gt;
*Type sudo apachectl restart&lt;br /&gt;
&lt;br /&gt;
In other words, in the file /etc/php5/apache2/php.ini you need to change &amp;quot;post_max_size&amp;quot;, &amp;quot;upload_max_filesize&amp;quot; and &amp;quot;max_execution_time&amp;quot; to values that suit your needs. All this using whatever editor you are used to. &lt;br /&gt;
&lt;br /&gt;
[http://nginx.org/en/docs/http/ngx_http_core_module.html#client_max_body_size NGINX] system administrators should also add client_max_body_size=XXX to the &amp;quot;http&amp;quot; section of their nginx main configuration file. ([https://rtcamp.com/tutorials/php/increase-file-upload-size-limit/#change-in-nginx-config see more info])&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
====XAMPP on Mac Instructions====&lt;br /&gt;
&lt;br /&gt;
These are instructions for how to do this for Moodle on a Mac using the [http://download.moodle.org/macosx/ XAMPP sample download package available]. (This is not for a OS X production server.)&lt;br /&gt;
&lt;br /&gt;
* Close down Apache and MySQL if they are running via the XAMPP Control app and close the XAMPP Control app &lt;br /&gt;
* Open Finder and go to Applications&lt;br /&gt;
* Navigate down and open the folder &#039;&#039;XAMPP&#039;&#039; / &#039;&#039;xamppfiles&#039;&#039; / &#039;&#039;etc&#039;&#039;&lt;br /&gt;
* Open the file &#039;&#039;php.ini&#039;&#039; with TextEdit (or another plain text editor)&lt;br /&gt;
* Search for the &#039;&#039;post_max_size&#039;&#039; setting and up this from 128M (the default) to more; 500M is the maximum&lt;br /&gt;
* Do the same for &#039;&#039;upload_max_filesize&#039;&#039; (make the numbers the same)&lt;br /&gt;
* Search for the &#039;&#039;max_execution_time&#039;&#039; setting and up this to 300 (or more if you get timeouts on uploads)&lt;br /&gt;
* Save the php.ini file &lt;br /&gt;
* restart Apache and MySQL as usual&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note: You may get a &amp;quot;permission denied&amp;quot; error when saving the php.ini file unless you are logged in with  admin access to your Mac. To work around this, you can set the &#039;&#039;/etc&#039;&#039; directory in which the php.ini file is located to be writable temporarily. For how to do that, see [http://answers.yahoo.com/question/index?qid=20090115235753AA4DtJ0 here] or [http://www.ehow.com/how_2314896_fix-permissions-mac-os-x.html here].&lt;br /&gt;
&lt;br /&gt;
====Windows XP and Server 2003 Instructions====&lt;br /&gt;
&lt;br /&gt;
These instructions presume that you have downloaded the latest PHP 5.3.x Windows zip package and extracted it to C:\PHP. If you have installed PHP to another location then change all references to &amp;quot;C:\PHP&amp;quot; to the location you installed PHP too.&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Download and install any text editor that can save the file in a UTF-8 format, [http://www.crimsoneditor.com Crimson Editor] is one such, NotePad++ is another, use that instead of either Wordpad or Notepad! The issue is that WordPad or Notepad will include hidden characters that may not be compatible with the requirements of PHP.   &lt;br /&gt;
|} &lt;br /&gt;
&lt;br /&gt;
*Open C:\PHP&lt;br /&gt;
*Right Click the &#039;&#039;&#039;php.ini&#039;&#039;&#039; file in this folder and choose &amp;quot;Open with...&amp;quot; selecting your editor of choice. &lt;br /&gt;
*Press Ctrl + F and type &amp;quot;post_max_size&amp;quot; (click Find...&amp;quot;, where needed) &lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;upload_max_filesize&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to the number of Mb you want your site to accept as uploads&lt;br /&gt;
*Press Ctrl + F and type &amp;quot;max_execution_time&amp;quot; (click Find...&amp;quot;, where needed)&lt;br /&gt;
*Change the value to 600&lt;br /&gt;
*Press Ctrl and S or the save button. &lt;br /&gt;
*Exit your editor. &lt;br /&gt;
*Restart your webserver to reload PHP with the edited changes. &lt;br /&gt;
**&#039;&#039;&#039;For IIS&#039;&#039;&#039;&lt;br /&gt;
**Open the Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;iisreset /RESTART&amp;quot;&lt;br /&gt;
**For &#039;&#039;&#039;Apache 2 and Windows XP&#039;&#039;&#039;&lt;br /&gt;
**Go to Start &amp;gt; All Programs &amp;gt; Apache &amp;gt; Restart&lt;br /&gt;
**&#039;&#039;&#039;For Apache 2 and Windows Server&#039;&#039;&#039;&lt;br /&gt;
**The following command will work as long as you have installed Apache 2 as a service on your Windows Server&lt;br /&gt;
**Open your Start Menu on your server and select &amp;quot;Run&amp;quot;&lt;br /&gt;
**Type &amp;quot;httpd -k restart&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Your new file size limit should now appear in Administration &amp;gt; Security &amp;gt; Site Policies &amp;gt; Maximum uploaded file size&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE:&#039;&#039;&#039; These instructions also cover the Xampp Windows installer. Just replace C:\PHP with C:\Moodle\server\php and to restart your Moodle with a normal stop-start.&lt;br /&gt;
&lt;br /&gt;
==Modifying the apache config file==&lt;br /&gt;
====Ubuntu Linux Instructions====&lt;br /&gt;
You may also need to edit the config.php file in the moodle directory:&lt;br /&gt;
*Type &amp;quot;gksudo nautilus&amp;quot; to get root permissions&lt;br /&gt;
*Navigate to /etc/moodle&lt;br /&gt;
*Open apache.conf&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php5.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Go to the &amp;quot;&amp;lt;IfModule mod_php4.c&amp;gt;&amp;quot; section&lt;br /&gt;
*Change &amp;quot;php_value upload_max_filesize = 2M&amp;quot; to a higher value&lt;br /&gt;
*Change &amp;quot;php_value post_max_size = 2M&amp;quot; to a higher value&lt;br /&gt;
*Save file&lt;br /&gt;
*Type sudo /etc/init.d/apache2 restart&lt;br /&gt;
&lt;br /&gt;
===Modifying the .htaccess file===&lt;br /&gt;
&lt;br /&gt;
The following instructions will only work on an Apache web server, and also the Apache server must have Overrides allowed. Traditionally, you could only use .htaccess files when PHP was run as a module of Apache, but with Apache 2.2, this appears to no longer be the case. You can now use the .htaccess file in either module or cgi forms. As well, allowing the use of .htaccess files will cause a performance hit on the server, not a desirable outcome either - so check with your Host. &lt;br /&gt;
&lt;br /&gt;
The .htaccess file is a distributed configuration file, that is, it can be used on a per-folder basis to configure each user&#039;s folder and sub-folders. You cannot alter the &amp;quot;AllowOverrides&amp;quot; directive in the Apache configuration file with a .htaccess file, only the Host can set that manually. Usually the Host will place a .htaccess file into your site Root if they do allow you to override the server settings. You can edit it the same as below, and the overrides you set will work. Alternatively, you may create your own .htaccess file in your text editor. It may also be called something else, like .config. If you have any file that starts with a ., you might want to open it in your text editor, just out of curiosity. &lt;br /&gt;
&lt;br /&gt;
Create a file called .htaccess in Moodle&#039;s main directory (where &#039;index.php&#039; is located, not the &#039;moodledata&#039; directory) that contains the following information:&lt;br /&gt;
&lt;br /&gt;
 php_value upload_max_filesize 20971520&lt;br /&gt;
 php_value post_max_size 20971520&lt;br /&gt;
 php_value max_execution_time 600&lt;br /&gt;
&lt;br /&gt;
20971520 is the integer value for 20Mb. You can use the following site to [http://www.onlineconversion.com/computer_base2.htm convert MegaBytes to Bytes].&lt;br /&gt;
&lt;br /&gt;
For a more complete description of how to edit the .htacess file, look at this page, [http://httpd.apache.org/docs/current/howto/htaccess.html Apache Tutorial: .htaccess files]&lt;br /&gt;
&lt;br /&gt;
===Modifying the IIS 7.0/7.5 configuration (Windows Server 2008, Windows Server 2008 R2)===&lt;br /&gt;
First increase activity and request time outs (allows large files to succeed on slow connections)&lt;br /&gt;
 FastCGI Settings &amp;gt; Edit (Right-click on PHP application)&lt;br /&gt;
 Set Process Model &amp;gt; Activity Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
 Set Process Model &amp;gt; Request Timeout to &#039;3600&#039; (one hour)&lt;br /&gt;
Next set &#039;Maximum allowed content length&#039;&lt;br /&gt;
 Request Filtering &amp;gt; Edit Feature Settings:&lt;br /&gt;
 Set &#039;Maximum allowed content length&#039; to your desired file size (in bytes) e.g. &#039;536870912&#039; for 512MB (default is approximately 28.6MB)&lt;br /&gt;
&lt;br /&gt;
==Hosted Server==&lt;br /&gt;
Things can be a little different with a hosted server for uploaded and downloaded file size.  You are probably going to  to be told to create or change a .htaccess file, or to modify a php.ini file.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|It might be a good idea to talk to with your service provider before you attempt anything.  They probably have instructions on &amp;quot;how to&amp;quot; and may have their own limits for uploaded file size. Some hosts measure the file size in gigabytes and others in megabytes.  If you are unhappy with their limits, then check your contract and consider changing your provider to one that has a limit and price that you like.&lt;br /&gt;
|}   &lt;br /&gt;
&lt;br /&gt;
===.htaccess with hosted server===&lt;br /&gt;
The one purpose of an .htaccess file is to override the the current limitations of both the server and the php.ini file.  Your hosted server should inform you where that file needs be placed in your Moodle, but generally in the root is sufficient. They may already have a standard file you can use, if so, use it - but perhaps not.  &lt;br /&gt;
&lt;br /&gt;
To the .htaccess file add the lines:&lt;br /&gt;
  php_value upload_max_filesize 128M&lt;br /&gt;
  php_value post_max_size 128M&lt;br /&gt;
  &lt;br /&gt;
&lt;br /&gt;
This will limit uploads to 128MB, but you can make it any size you agree with your provider. The wording may vary slightly, according to the demands of the server.&lt;br /&gt;
&lt;br /&gt;
===php.ini with hosted server===&lt;br /&gt;
Some servers will not allow you to change the moodle root .htaccess file and tell you to use a php.ini file for php directives.  Here you can use the instruction located in the section above called [[File_upload_size#Modifying_the_php.ini_file|Modifying the php.ini file]].&lt;br /&gt;
&lt;br /&gt;
Find the php.ini file in your moodle subfolder on your hosted server. You might want to copy the file as a backup just in case.  Edit php.ini, find &amp;quot;upload_max_filesize&amp;quot; and post_max_size in the code.  After the = change the number.  Here the max filesize is 20 megabytes.  &lt;br /&gt;
&lt;br /&gt;
 upload_max_filesize = 20M&lt;br /&gt;
 post_max_size = 20M&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;nicetable&amp;quot;&lt;br /&gt;
|[[Image:lightbulb.png]]&lt;br /&gt;
|Still not changed? Some hosts using cpanel have a php config program under services/software. Use the &amp;quot;Single php.ini&amp;quot; option and make sure you note the location of the php.ini file to modify. This changes the .htaccess file in the same area and thus the server limit for all programs using php.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==See Also==&lt;br /&gt;
*[[Administration_FAQ#How_do_the_limits_on_uploaded_files_work.3F|Administration FAQ Doc page]]&lt;br /&gt;
*[[Site_policies#Maximum_uploaded_file_size|Site Policies Doc page]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=39625 Detailed instructions to increase the maximum allowed size for uploaded files] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=97907 Instructions to increase maximum allowed size on hosted servers] forum discussion&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=124441 Help on changing the maximum upload size when installing Moodle via apt-get] forum discussion&lt;br /&gt;
&lt;br /&gt;
[[es:Tamaño de archivo subido]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:FAQ|File]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Apache&amp;diff=119811</id>
		<title>Apache</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Apache&amp;diff=119811"/>
		<updated>2015-09-15T12:37:00Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* SSL */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
&#039;&#039;&#039;This article refers to the &#039;Apache HTTP server&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
The Apache HTTP server is the software that (along with the PHP scripting language) &#039;runs&#039; Moodle. Note that there are alternatives (e.g. IIS on Windows) but the Apache HTTP Server is very popular on all platforms. &lt;br /&gt;
&lt;br /&gt;
== Installing Apache ==&lt;br /&gt;
Installers are available for most platforms from http://httpd.apache.org/download.cgi. The official installation instructions are here: http://httpd.apache.org/docs/2.0/install.html. If you are running Linux then you are recommended to use the packaged version if you can. For example in Debian/Ubuntu it is simply:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install apache2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See the documentation for your particular platform for the instructions. Apache is straightforward to build from source if you have to and the PHP documentation contains an article on building both Apache and PHP together - although you should rarely need to do that.&lt;br /&gt;
&lt;br /&gt;
==Performance==&lt;br /&gt;
&lt;br /&gt;
See [[Performance recommendations]]&lt;br /&gt;
&lt;br /&gt;
==Slasharguments==&lt;br /&gt;
&lt;br /&gt;
The function &#039;&#039;slash arguments&#039;&#039; is required for various features in Moodle to work correctly, as described in [[Using slash arguments]].&lt;br /&gt;
&lt;br /&gt;
To turn it on, add this line to your &#039;&#039;httpd.conf&#039;&#039;, or to a &#039;&#039;.htaccess&#039;&#039; file in your local directory:&lt;br /&gt;
&lt;br /&gt;
 AcceptPathInfo On&lt;br /&gt;
&lt;br /&gt;
Note: When using &amp;quot;.htaccess&amp;quot; in your local Moodle install folder, you should include/enable &amp;quot;AllowOverride Directive&amp;quot; in &amp;quot;httpd.conf&amp;quot;, first.&lt;br /&gt;
Also! please note that using .htaccess file will cause performance hit on your server!&lt;br /&gt;
&lt;br /&gt;
==SSL==&lt;br /&gt;
&lt;br /&gt;
Moodle has an option to enable HTTPS for the whole site or for just the login pages; either option requires that your web server is configured for SSL.&lt;br /&gt;
&lt;br /&gt;
* Whole site HTTPS is enabled by changing http://&amp;lt;url&amp;gt; to https:// &amp;lt;url&amp;gt; in your config.php &#039;wwwroot&#039; parameter.&lt;br /&gt;
* Login only HTTPS is enabled by setting the &#039;loginhttps&#039; parameter, where the wwwroot schema should remain as http://&lt;br /&gt;
&lt;br /&gt;
Login only https is available in the admin interface via Administration&amp;gt;Security&amp;gt;HTTP Security and checking the button. (Note the warning and see ssl section below)&lt;br /&gt;
&lt;br /&gt;
Prior to Moodle 2.3 It was not advised to run the whole site over HTTPS due to legacy restrictions with client-side caching. This is no longer the case assuming client browsers support the &#039;Cache-Control: public&#039; method, which all supported browsers for this version of Moodle do.&lt;br /&gt;
&lt;br /&gt;
To use HTTPS you will need to obtain an SSL certificate, you have two options:&lt;br /&gt;
&lt;br /&gt;
* Generate a self-signed certificate. This is fine on (say) an Intranet but unsuitable for the public internet, but users will we warned the certificated is untrusted when used publicly.&lt;br /&gt;
* Purchase a certificate from a vendor. There is a surprising range of prices and value-added services available. Some hosting companies even provide free certificates. &lt;br /&gt;
&lt;br /&gt;
Debian provides instructions for installing a self-signed certificate [https://wiki.debian.org/Self-Signed_Certificate on their wiki] and includes general information on configuring Apache for SSL.&lt;br /&gt;
If you purchase a vendor certificate you will normally receive instructions for installing it.&lt;br /&gt;
&lt;br /&gt;
A basic Apache SSL configuration can be summarised as:&lt;br /&gt;
&lt;br /&gt;
 Listen 443&lt;br /&gt;
 NameVirtualHost *:443&lt;br /&gt;
 &amp;lt;VirtualHost *:443&amp;gt;&lt;br /&gt;
     SSLEngine On&lt;br /&gt;
     SSLCertificateFile /path/to/your/certificate.crt&lt;br /&gt;
     SSLCertificateKeyFile /path/to/your/certificate.key&lt;br /&gt;
     ...&lt;br /&gt;
 &amp;lt;/VirtualHost&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [http://httpd.apache.org/ The Apache HTTP Server Project homepage]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Apache_HTTP_Server Wikipedia article on the Apache HTTP Server]&lt;br /&gt;
* [http://httpd.apache.org/docs/2.0/misc/perf-tuning.html Apache Performance Tuning article at the official homepage]&lt;br /&gt;
* [https://els.earlham.edu/cayaraa/weblog/1468.html Making Moodle work with SSL]&lt;br /&gt;
* [http://www.krufix.de/ Using the same Moodle twice in local network and Internet via SSL-Proxy] (in German)&lt;br /&gt;
&lt;br /&gt;
[[pl:Apache]]&lt;br /&gt;
[[ja:Apache]]&lt;br /&gt;
[[de:Apache]]&lt;br /&gt;
[[es:Apache]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119737</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119737"/>
		<updated>2015-09-04T15:19:18Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Using Homebrew */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not cooperate with your changes when they upgrade the OS.&lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
==Using the native Apache=== &lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
==php modules==&lt;br /&gt;
To Do&lt;br /&gt;
&lt;br /&gt;
=Using Homebrew=&lt;br /&gt;
&lt;br /&gt;
This is an easier alternative to most of the above.&lt;br /&gt;
Homebrew is a package management tool like apt and yum which was created for OSX. Everything ends up in /usr/local or similar and when Apple do an upgrade, they shouldn&#039;t muck it up.&lt;br /&gt;
The homebrew site is at http://brew.sh &lt;br /&gt;
&lt;br /&gt;
Start with the command&lt;br /&gt;
&lt;br /&gt;
  ruby -e &amp;quot;$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119736</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119736"/>
		<updated>2015-09-04T14:00:09Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Using Homebrew */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not cooperate with your changes when they upgrade the OS.&lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
==Using the native Apache=== &lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
==php modules==&lt;br /&gt;
To Do&lt;br /&gt;
&lt;br /&gt;
=Using Homebrew=&lt;br /&gt;
This is an easier alternative to most of the above.&lt;br /&gt;
Homebrew is a package management tool like apt and yum which was created for OSX. Everything ends up in /usr/local or similar and when Apple do an upgrade, they shouldn&#039;t muck it up.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119735</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119735"/>
		<updated>2015-09-04T13:59:45Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Using Homebrew */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not cooperate with your changes when they upgrade the OS.&lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
==Using the native Apache=== &lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
==php modules==&lt;br /&gt;
To Do&lt;br /&gt;
&lt;br /&gt;
===Using Homebrew===&lt;br /&gt;
This is an easier alternative to most of the above.&lt;br /&gt;
Homebrew is a package management tool like apt and yum which was created for OSX. Everything ends up in /usr/local or similar and when Apple do an upgrade, they shouldn&#039;t muck it up.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119734</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119734"/>
		<updated>2015-09-04T13:59:13Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not cooperate with your changes when they upgrade the OS.&lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
==Using the native Apache=== &lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
==php modules==&lt;br /&gt;
To Do&lt;br /&gt;
&lt;br /&gt;
==Using Homebrew==&lt;br /&gt;
This is an easier alternative to most of the above.&lt;br /&gt;
Homebrew is a package management tool like apt and yum which was created for OSX. Everything ends up in /usr/local or similar and when Apple do an upgrade, they shouldn&#039;t muck it up.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119718</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119718"/>
		<updated>2015-09-02T09:01:26Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Yosemite native OSX install */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not cooperate with your changes when they upgrade the OS.&lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119717</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119717"/>
		<updated>2015-09-02T08:19:35Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Making php etc work */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not keep apache and php up to date on a standard OS X install. &lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119716</id>
		<title>install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=install_on_OS_X&amp;diff=119716"/>
		<updated>2015-09-02T08:18:41Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Created page with &amp;quot;==Yosemite native OSX install==  This page is for people who want to do an OSX install without using someone else&amp;#039;s packaging.  There are some warning to bear in mind.  A nati...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not keep apache and php up to date on a standard OS X install. &lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=119715</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=119715"/>
		<updated>2015-09-02T08:17:34Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]) or [[ install on OS X]]. These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]], [[Internet_Information_Services|IIS]], [[Nginx]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_29_STABLE git://git.moodle.org/moodle.git  &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.9 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of the previous command is to allow the Apache user account (www-data in this case) to access and change files within the moodle site. Many people would consider this a brave move for a new site admin to implement. In a new moodle you can safely leave this out. A default Ubuntu install does not have the +a option for the chmod command anyway. The +a attribute is an ACL (Access Control List) facility which allows you to set per user access for individual files. For example, OSX has this by default.&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions.&lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date. (more info [[Location]])&lt;br /&gt;
** [http://php.net/manual/en/timezones.php Set server&#039;s local timezone] inside &amp;lt;tt&amp;gt;php.ini&amp;lt;/tt&amp;gt; (should probably be inside &amp;lt;tt&amp;gt;/etc/php.ini&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/etc/php.d/date.ini&amp;lt;/tt&amp;gt;, depending on the underline OS):&lt;br /&gt;
**: &amp;lt;code ini&amp;gt;[Date]&lt;br /&gt;
; Defines the default timezone used by the date functions&lt;br /&gt;
date.timezone = &amp;quot;YOUR LOCAL TIMEZONE&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119714</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119714"/>
		<updated>2015-09-02T08:16:09Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
There are some warning to bear in mind. &lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the same as a Linux install and so the advice there can be applied here also Apple does not keep apache and php up to date on a standard OS X install. &lt;br /&gt;
&lt;br /&gt;
Most of this work is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf or sudo vi /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119705</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119705"/>
		<updated>2015-09-01T13:29:24Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development. The OS X install described here is essentially the samer as a Linux install and so the advice there can be applied here.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
The default Apache user is &amp;quot;_www&amp;quot; and so your moodledata folder needs write permissions for the _www user.&lt;br /&gt;
&lt;br /&gt;
sudo chown &amp;lt;username&amp;gt;:_www moodledata&lt;br /&gt;
&lt;br /&gt;
In the finder, choose the folder and using the get info dialogue to give _www write access to the folder.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will probably need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119704</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119704"/>
		<updated>2015-09-01T13:06:49Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Yosemite native OSX install==&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
=Enable Apache.=&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
=Making “Sites” work (Optional)=&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Making php etc work=&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
=Test php.=&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
=Mysql=&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yosemite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119703</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119703"/>
		<updated>2015-09-01T13:04:13Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yosemite native OSX install&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Enable Apache.&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
Making “Sites” work (Optional)&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Making php etc all work&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
Test php.&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well known phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
Mysql&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yoesmite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119702</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119702"/>
		<updated>2015-09-01T13:01:08Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yosemite native OSX install&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Enable Apache.&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
Making “Sites” work (Optional)&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Making php etc all work&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
Test php.&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well know phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
Mysql&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yoesmite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119701</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119701"/>
		<updated>2015-09-01T13:00:43Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yosemite native OSX install&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Enable Apache.&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
Making “Sites” work (Optional)&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Making php etc all work&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
Test php.&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well know phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
Mysql&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yoesmite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OS X | Installation]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119700</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119700"/>
		<updated>2015-09-01T13:00:08Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yosemite native OSX install&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Enable Apache.&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
Making “Sites” work (Optional)&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Making php etc all work&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
Test php.&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well know phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
Mysql&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yoesmite.&lt;br /&gt;
&lt;br /&gt;
[[Category:Mac OS X]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119699</id>
		<title>None Mamp install on OS X</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=None_Mamp_install_on_OS_X&amp;diff=119699"/>
		<updated>2015-09-01T12:54:21Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Start of a native OSX install page 1/9/2015&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Yosemite native OSX install&lt;br /&gt;
&lt;br /&gt;
This page is for people who want to do an OSX install without using someone else&#039;s packaging. &lt;br /&gt;
&lt;br /&gt;
Most of this stuff is via the cli which you can use in the ‘terminal’ application. To edit files, use nano or vi. Mostly you need to be root to edit the files so precede your editor name by sudo.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
A native install of Moodle on an OSX machine is not really suitable as an internet linked live server  but it is great for testing and development.&lt;br /&gt;
&lt;br /&gt;
If you are doing any kind of development on an mac then consider an installation of  XCode which will install all sorts of odds and ends that you are likely to need now and then such as libraries for php etc.&lt;br /&gt;
&lt;br /&gt;
e.g sudo nano /etc/apache2/httpd.conf&lt;br /&gt;
&lt;br /&gt;
Enable Apache.&lt;br /&gt;
Apache is already installed and you need to start it and test it works. Start apache via this command.&lt;br /&gt;
&lt;br /&gt;
sudo apachectl start&lt;br /&gt;
&lt;br /&gt;
If you want it to start on boot then issue this command&lt;br /&gt;
&lt;br /&gt;
sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist&lt;br /&gt;
&lt;br /&gt;
Test this by going to http://localhost on a browser.&lt;br /&gt;
 at the time of writing 01/09/2015  this test was passed by Safari, Firefox and Chrome.&lt;br /&gt;
&lt;br /&gt;
Making “Sites” work (Optional)&lt;br /&gt;
&lt;br /&gt;
Mac users are used to having a Sites folder which publishes a local-users web site  on http://&amp;lt;host url address&amp;gt;/~&amp;lt;UserName&amp;gt;&lt;br /&gt;
&lt;br /&gt;
cd /etc/apache2/users&lt;br /&gt;
edit  &amp;lt;username&amp;gt;.conf&lt;br /&gt;
&lt;br /&gt;
with these contents. Don’t forget to change &amp;lt;username&amp;gt; for your username.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;Directory &amp;quot;/Users/&amp;lt;username&amp;gt;/Sites/&amp;quot;&amp;gt;&lt;br /&gt;
AllowOverride All&lt;br /&gt;
Options Indexes MultiViews FollowSymLinks&lt;br /&gt;
Require all granted&lt;br /&gt;
&amp;lt;/Directory&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Making php etc all work&lt;br /&gt;
&lt;br /&gt;
in /etc/apache2/httpd.conf uncomment all the following lines&lt;br /&gt;
&lt;br /&gt;
LoadModule authz_core_module libexec/apache2/mod_authz_core.so&lt;br /&gt;
LoadModule authz_host_module libexec/apache2/mod_authz_host.so&lt;br /&gt;
LoadModule userdir_module libexec/apache2/mod_userdir.soLoadModule php5_module libexec/apache2/libphp5.so&lt;br /&gt;
Include /private/etc/apache2/extra/httpd-userdir.conf&lt;br /&gt;
&lt;br /&gt;
Test php.&lt;br /&gt;
&lt;br /&gt;
Make a file in the root of your webfolder called phpinfo.php and add this content.&lt;br /&gt;
 &amp;lt;?php phpinfo(); ?&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Then, visit the site by url httpd://localhost/&amp;lt;your user name&amp;gt;/phpinfo.php&lt;br /&gt;
&lt;br /&gt;
This should give you the well know phpinfo page. The most likely error will be a page just showing the text &amp;lt;?php phpinfo(); ?&amp;gt; which means php is not working.&lt;br /&gt;
&lt;br /&gt;
Mysql&lt;br /&gt;
&lt;br /&gt;
Download your version of Mysql from the Mysql site http://dev.mysql.com/downloads/mysql/&lt;br /&gt;
and install it! &lt;br /&gt;
The dmg install will put a system settings item enabling Mysql to be started/stopped. If you tick the option to start on boot then it may not actually start on boot. This is an on-off issue with OSX.&lt;br /&gt;
&lt;br /&gt;
If you are not running OSX server then you will need to install Mysql again if Apple issue an upgrade of Yoesmite.&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=119698</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=119698"/>
		<updated>2015-09-01T12:50:22Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Adding page for native OSX install&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]) or [[None Mamp install on OS X]]. These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]], [[Internet_Information_Services|IIS]], [[Nginx]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_29_STABLE git://git.moodle.org/moodle.git  &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.9 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of the previous command is to allow the Apache user account (www-data in this case) to access and change files within the moodle site. Many people would consider this a brave move for a new site admin to implement. In a new moodle you can safely leave this out. A default Ubuntu install does not have the +a option for the chmod command anyway. The +a attribute is an ACL (Access Control List) facility which allows you to set per user access for individual files. For example, OSX has this by default.&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions.&lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date. (more info [[Location]])&lt;br /&gt;
** [http://php.net/manual/en/timezones.php Set server&#039;s local timezone] inside &amp;lt;tt&amp;gt;php.ini&amp;lt;/tt&amp;gt; (should probably be inside &amp;lt;tt&amp;gt;/etc/php.ini&amp;lt;/tt&amp;gt; or &amp;lt;tt&amp;gt;/etc/php.d/date.ini&amp;lt;/tt&amp;gt;, depending on the underline OS):&lt;br /&gt;
**: &amp;lt;code ini&amp;gt;[Date]&lt;br /&gt;
; Defines the default timezone used by the date functions&lt;br /&gt;
date.timezone = &amp;quot;YOUR LOCAL TIMEZONE&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Features&amp;diff=119603</id>
		<title>Features</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Features&amp;diff=119603"/>
		<updated>2015-08-19T19:11:31Z</updated>

		<summary type="html">&lt;p&gt;T100ss: changed drop and drop to drag and drop&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{About Moodle}}&lt;br /&gt;
Moodle is a free, online Learning Management system enabling educators to create their own private website filled with dynamic courses that extend learning, any time, anywhere. &lt;br /&gt;
&lt;br /&gt;
Whether you&#039;re a teacher, student or administrator, Moodle can meet your needs. Moodle’s extremely customisable core comes with many standard features. Take a look at a highlight of Moodle&#039;s core features below.&lt;br /&gt;
&lt;br /&gt;
==General Features==&lt;br /&gt;
&amp;lt;div class=&amp;quot;contentblock&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot; widths=&amp;quot;300px&amp;quot; heights=&amp;quot;225px&amp;quot;&amp;gt;&lt;br /&gt;
Image:better-responsive-design.png|&amp;lt;h3&amp;gt;Modern, easy to use interface&amp;lt;/h3&amp;gt;Designed to be responsive and accessible, the Moodle interface is easy to navigate on both desktop and mobile devices.&amp;lt;br&amp;gt;[http://school.demo.moodle.net/ View demo]&lt;br /&gt;
Image:newdashboardfeature.png|&amp;lt;h3&amp;gt;Personalised Dashboard&amp;lt;/h3&amp;gt;Organise and display courses the way you want, and view at a glance current tasks and messages.&amp;lt;br&amp;gt;[[Dashboard]]&lt;br /&gt;
Image:Collaborative-tools.jpg|&amp;lt;h3&amp;gt;Collaborative tools and activities&amp;lt;/h3&amp;gt;Work and learn together in forums, wikis, glossaries, database activities, and much more.&amp;lt;br&amp;gt;[[Activities]]&lt;br /&gt;
Image:all-in-one-Calendar.jpg|&amp;lt;h3&amp;gt;All-in-one calendar&amp;lt;/h3&amp;gt;Moodle’s calendar tool helps you keep track of your academic or company calendar, course deadlines, group meetings, and other personal events. &amp;lt;br&amp;gt;[[Calendar]]&lt;br /&gt;
Image:File-Management.jpg|&amp;lt;h3&amp;gt;Convenient file management&amp;lt;/h3&amp;gt;Drag and drop files from cloud storage services including MS Skydrive, Dropbox and Google Drive.&amp;lt;br&amp;gt;[[Working with files]]&lt;br /&gt;
Image:text-editor.jpg|&amp;lt;h3&amp;gt;Simple and intuitive text editor&amp;lt;/h3&amp;gt;Format text and conveniently add media and images with an editor that works across all web browsers and devices.&amp;lt;br&amp;gt;[[Text editor]]&lt;br /&gt;
Image:Notifications.jpg|&amp;lt;h3&amp;gt;Notifications&amp;lt;/h3&amp;gt;When enabled, users can receive automatic alerts on new assignments and deadlines, forum posts and also send private messages to one another.&amp;lt;br&amp;gt;[[Messaging]]&lt;br /&gt;
Image:track-progress.jpg|&amp;lt;h3&amp;gt;Track progress&amp;lt;/h3&amp;gt;Educators and learners can track progress and completion with an array of options for tracking individual activities or resources and at course level.&amp;lt;br&amp;gt;[[Tracking progress]]&lt;br /&gt;
&amp;lt;/img&amp;gt;&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Main page|View the complete list of features&amp;amp;rarr;]]&lt;br /&gt;
&lt;br /&gt;
==Administrative Features==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot; widths=&amp;quot;300px&amp;quot; heights=&amp;quot;225px&amp;quot;&amp;gt;&lt;br /&gt;
Image:customisedesign.jpg|&amp;lt;h3&amp;gt;Customisable site design and layout&amp;lt;/h3&amp;gt;Easily customise a Moodle theme with your logo, colour schemes and much more - or simply design your own theme.&amp;lt;br&amp;gt;[[Themes]]&lt;br /&gt;
Image:secure-authentication-and-enrolment.jpg|&amp;lt;h3&amp;gt;Secure authentication and mass enrolment&amp;lt;/h3&amp;gt;Over 50 authentication and enrolment options to add and enrol users to your Moodle site and courses.&amp;lt;br&amp;gt;[[Authentication]] / [[Enrolment]]&lt;br /&gt;
Image:multilingual-capability.jpg|&amp;lt;h3&amp;gt;Multilingual capability&amp;lt;/h3&amp;gt;Allow users to view course content and learn in their own language, or set it up for multilingual users and organisations. &amp;lt;br&amp;gt;[[Language]]&lt;br /&gt;
Image:bulk-course-upload.jpg|&amp;lt;h3&amp;gt;Bulk course creation and easy backup&amp;lt;/h3&amp;gt;Add courses in bulk, back up and restore large courses with ease.&amp;lt;br&amp;gt;[[Bulk course upload]]&lt;br /&gt;
Image:manage-user-roles.jpg|&amp;lt;h3&amp;gt;Manage user roles and permissions&amp;lt;/h3&amp;gt;Address security concerns by defining roles to specify and manage user access.&amp;lt;br&amp;gt;[[Roles and permissions]]&lt;br /&gt;
Image:lti-scorm-compliant.jpg|&amp;lt;h3&amp;gt;Supports open standards&amp;lt;/h3&amp;gt;Readily import and export IMS-LTI, SCORM courses and more into Moodle. &amp;lt;br&amp;gt;[[SCORM]] / [[External tool]]&lt;br /&gt;
Image:embed-external-tool.jpg|&amp;lt;h3&amp;gt;High interoperability&amp;lt;/h3&amp;gt;Freely integrate external applications and content or create your own plugin for custom integrations. &amp;lt;br&amp;gt;[[Standards]]&lt;br /&gt;
Image:Install_add_on.jpg|&amp;lt;h3&amp;gt;Simple plugin management&amp;lt;/h3&amp;gt;Install and disable plugins within a single admin interface. &amp;lt;br&amp;gt;[[Installing plugins]]&lt;br /&gt;
Image:security-updates.jpg|&amp;lt;h3&amp;gt;Regular security updates&amp;lt;/h3&amp;gt;Moodle is regularly updated with the latest security patches to help ensure your Moodle site is secure. &amp;lt;br&amp;gt;[[Security]]&lt;br /&gt;
Image:detailed-logs.jpg|&amp;lt;h3&amp;gt;Detailed reporting and logs&amp;lt;/h3&amp;gt;View and generate reports on activity and participation at course and site level.&amp;lt;br&amp;gt;[[Site-wide reports]]&lt;br /&gt;
&amp;lt;/img&amp;gt;&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Managing a Moodle site|See all site management and development features&amp;amp;rarr;]]&lt;br /&gt;
&lt;br /&gt;
==Course Development and Management Features==&lt;br /&gt;
&amp;lt;gallery mode=&amp;quot;nolines&amp;quot; widths=&amp;quot;300px&amp;quot; heights=&amp;quot;225px&amp;quot;&amp;gt;&lt;br /&gt;
Image:direct-learning-path.jpg|&amp;lt;h3&amp;gt;Direct learning paths&amp;lt;/h3&amp;gt;Design and manage courses to meet various requirements. Classes can be instructor-led, self-paced, blended or entirely online. &amp;lt;br&amp;gt;[[Pedagogy]]&lt;br /&gt;
Image:collaborative-activities.jpg|&amp;lt;h3&amp;gt;Encourage collaboration&amp;lt;/h3&amp;gt;Built-in collaborative publishing features foster engagement and encourage content-driven collaboration. &amp;lt;br&amp;gt;[[Activities]]&lt;br /&gt;
Image:embed-external-tool.jpg|&amp;lt;h3&amp;gt;Embed external resources&amp;lt;/h3&amp;gt;Teach materials and include assignments from other sites and connect to the gradebook in Moodle.&amp;lt;br&amp;gt;[[External tool]]&lt;br /&gt;
Image:built-in-media-support.jpg|&amp;lt;h3&amp;gt;Multimedia Integration&amp;lt;/h3&amp;gt;Moodle’s built-in media support enables you to easily search for and insert video and audio files in your courses. &amp;lt;br&amp;gt;[[Working with media]]&lt;br /&gt;
Image:manage-groups.jpg|&amp;lt;h3&amp;gt;Group management&amp;lt;/h3&amp;gt;Group learners to share courses, differentiate activities and facilitate team work.&amp;lt;br&amp;gt;[[Groups]]&lt;br /&gt;
Image:marking-workflow.jpg|&amp;lt;h3&amp;gt;Marking workflow&amp;lt;/h3&amp;gt;Conveniently assign different markers to assignments, manage grade moderation and control when marks are released to individual learners.&amp;lt;br&amp;gt;[[Assignment module]]&lt;br /&gt;
Image:annotate-pdf.jpg|&amp;lt;h3&amp;gt;In-line marking&amp;lt;/h3&amp;gt;Easily review and provide in-line feedback by annotating on PDF files directly within browser.&amp;lt;br&amp;gt;[[Assignment module]]&lt;br /&gt;
Image:peer-and-self-assessment.jpg|&amp;lt;h3&amp;gt;Peer and self assessment&amp;lt;/h3&amp;gt;Built-in activities such as workshops and surveys encourages learners to view, grade and assess their own and other course members&#039; work as a group.&amp;lt;br&amp;gt;[[Workshop]]&lt;br /&gt;
Image:badges.jpg|&amp;lt;h3&amp;gt;Integrated Badges&amp;lt;/h3&amp;gt;Fully compatible with Mozilla Open Badges, motivate learners and reward participation and achievement with customised Badges. &amp;lt;br&amp;gt;[[Badges]]&lt;br /&gt;
Image:advanced-grading.jpg|&amp;lt;h3&amp;gt;Outcomes and rubrics&amp;lt;/h3&amp;gt;Select from advanced grading methods to tailor the gradebook to your course and examination criteria.&amp;lt;br&amp;gt;[[Grades]]&lt;br /&gt;
Image:private-classroom.jpg|&amp;lt;h3&amp;gt;Security and privacy&amp;lt;/h3&amp;gt;Teach and share in a private space only you and your class can access.&amp;lt;br&amp;gt;[[Courses]]&lt;br /&gt;
&amp;lt;/img&amp;gt;&amp;lt;/gallery&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Managing a Moodle course|See all course creation and management features&amp;amp;rarr;]]&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
[[es:Características]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Upgrading&amp;diff=116547</id>
		<title>Upgrading</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Upgrading&amp;diff=116547"/>
		<updated>2014-12-23T15:51:51Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Install the new Moodle software */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}	&lt;br /&gt;
&#039;&#039;This page explains in detail how to upgrade Moodle. For a summary of the process, see [[Upgrade overview]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==Check the requirements==&lt;br /&gt;
&lt;br /&gt;
Check that your server meets all requirements for 2.8 in &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; [[Environment]]&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Note: You can only upgrade to Moodle 2.8 from Moodle 2.2 or later. If upgrading from earlier versions, you must [https://docs.moodle.org/22/en/Upgrading_to_Moodle_2.2 upgrade to 2.2] as a first step.&lt;br /&gt;
&lt;br /&gt;
==Before upgrading==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;We advise that you test the upgrade first on a COPY of your production site, to make sure it works as you expect.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Backup important data ==&lt;br /&gt;
&lt;br /&gt;
There are three areas that should be backed up before any upgrade:&lt;br /&gt;
#Moodle software (For example, everything in server/htdocs/moodle)&lt;br /&gt;
#Moodle uploaded files (For example, server/moodledata)&lt;br /&gt;
#Moodle database (For example, your Postgres or MySQL database dump)&lt;br /&gt;
&lt;br /&gt;
See [[Site backup]] for more specific information.&lt;br /&gt;
&lt;br /&gt;
==Put your site into maintenance mode==&lt;br /&gt;
Before you begin upgrading your site, you should put it into [[Maintenance_mode | maintenance mode]] to stop any non-admin users from logging in.&lt;br /&gt;
&lt;br /&gt;
== Check for plugin updates ==&lt;br /&gt;
&lt;br /&gt;
If you have [[Automatic updates deployment]] enabled, you will be able to update installed plugins automatically during the upgrade. Just make sure you check for available updates (via the button for it) at the Plugins check screen.&lt;br /&gt;
&lt;br /&gt;
If you are updating plugins manually, it is a good moment now to check in the [http://moodle.org/plugins Moodle Plugins directory] whether there is a 2.8 version available for any plugins (including themes) that you have previously installed on your site. If so, download the plugin package. In the next step, you will copy it to the appropriate location in your Moodle code (see [[Installing plugins]]).&lt;br /&gt;
&lt;br /&gt;
The upgrade of the plugin will then happen as part of the Moodle upgrade process.&lt;br /&gt;
&lt;br /&gt;
If an out-of-date plugin causes your upgrade to fail, you can usually delete the plugin code rather than uninstalling it from within Moodle so that the data associated with it is not deleted.&lt;br /&gt;
&lt;br /&gt;
== Install the new Moodle software ==&lt;br /&gt;
You can fetch the current (2.8) version of the software through &lt;br /&gt;
&lt;br /&gt;
wget http://sourceforge.net/projects/moodle/files/Moodle/stable28/moodle-latest-28.tgz&lt;br /&gt;
&lt;br /&gt;
=== Standard install package ===&lt;br /&gt;
&lt;br /&gt;
# Move your old Moodle software program files to another location. &#039;&#039;Do NOT copy new files over the old files.&#039;&#039;&lt;br /&gt;
# Unzip or unpack the upgrade file so that all the new Moodle software program files are in the location the old files used to be in on the server. Moodle will adjust SQL and moodledata if it needs to in the upgrade.&lt;br /&gt;
# Copy your old [[Configuration file|config.php file]] back to the new Moodle directory. &lt;br /&gt;
# As mentioned above, if you had installed any plugins on your site you should add them to the new code tree now. It is important to check that you get the correct version for your new version of Moodle. Be particularly careful that you do not overwrite any code in the new version of Moodle.&lt;br /&gt;
# Dont forget to also copy over your moodledata folder / directory.  If you don&#039;t you will get a &amp;quot;fatal error $cfg- dataroot is not configured properly&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
====Linux====&lt;br /&gt;
 mv moodle moodle.backup&lt;br /&gt;
 tar xvzf moodle-2.8.tgz&lt;br /&gt;
&lt;br /&gt;
Next, copy across your config.php, any custom plugins, and your .htaccess file if you created one (&#039;&#039;&#039;check that custom plugins are the correct version for your new Moodle first&#039;&#039;&#039;):&lt;br /&gt;
&lt;br /&gt;
 cp moodle.backup/config.php moodle&lt;br /&gt;
 cp -pr moodle.backup/theme/mytheme moodle/theme/mytheme&lt;br /&gt;
 cp -pr moodle.backup/mod/mymod moodle/mod/mymod&lt;br /&gt;
&lt;br /&gt;
Don&#039;t forget to make moodle/config.php (and the rest of the source code) readable by your www server. Ideally the files should not be writeable by your server.&lt;br /&gt;
&lt;br /&gt;
If you use cron, take care that cron.php is executeable and uses the correct php command: &lt;br /&gt;
 chmod 740 admin/cli/cron.php (some configurations need chmod 750 or chmod 755)&lt;br /&gt;
 copy the first line from cron.php (if it looks like &#039;#!/usr/local/bin/php&#039; or &#039;#!/usr/local/bin/php5.3&#039;, no need to copy &#039;&amp;lt;?php&#039;)&lt;br /&gt;
&lt;br /&gt;
if necessary.&lt;br /&gt;
&lt;br /&gt;
=== Using Git ===&lt;br /&gt;
&lt;br /&gt;
You can use Git for updating or upgrading your Moodle. See [[Git for Administrators]] for details.&lt;br /&gt;
&lt;br /&gt;
===Command line upgrade===&lt;br /&gt;
&lt;br /&gt;
On Linux servers, Moodle 2.8 supports running the [[CLI|upgrade from the command line]], rather than through a web browser. This is likely to be more reliable, particularly for large sites.&lt;br /&gt;
&lt;br /&gt;
== Finishing the upgrade ==&lt;br /&gt;
&lt;br /&gt;
The last step is to trigger the upgrade processes within Moodle. &lt;br /&gt;
&lt;br /&gt;
To do this just go to &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Notifications&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Moodle will automatically detect the new version and perform all the SQL database or file system upgrades that are necessary. If there is anything it can&#039;t do itself (very rare) then you will see messages telling you what you need to do.&lt;br /&gt;
&lt;br /&gt;
Assuming all goes well (no error messages) then you can start using your new version of Moodle and enjoy the new features!&lt;br /&gt;
&lt;br /&gt;
Note: If you are running multiple servers then you should purge all caches manually (via &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Development &amp;gt; Purge all caches&#039;&#039;) after completing the upgrade on all servers.&lt;br /&gt;
&lt;br /&gt;
===Fatal error: Maximum execution time of 30 seconds exceeded...===&lt;br /&gt;
&lt;br /&gt;
If your server uses a main language other than English, you may encounter a &#039;Fatal error: Maximum execution time of 30 seconds exceeded&#039; when you try to upgrade it. You can increase max_execution_time = 160 on php.ini to allow the scripts enough time to process the language update. Otherwise, you can switch to English as the default language before doing the upgrade and back to your original language after a succcessful upgrade. See the forum discussion at https://moodle.org/mod/forum/discuss.php?d=119598.&lt;br /&gt;
&lt;br /&gt;
==After upgrading==&lt;br /&gt;
&lt;br /&gt;
The config.php file from your installation should work fine but if you take a look at config-dist.php that came with Moodle 2.8 there are more/different options available (e.g. database drivers and settings). It&#039;s a good idea to map your old config.php settings to a new one based on the 2.8 config-dist.php.&lt;br /&gt;
&lt;br /&gt;
===Cron===&lt;br /&gt;
&lt;br /&gt;
Cron has received a major update (MDL-25499) and now has support for both scheduled and adhoc tasks.&lt;br /&gt;
&lt;br /&gt;
The benefits of these changes are:&lt;br /&gt;
* The schedule for every task can be configured by the admin&lt;br /&gt;
* Tasks can run in parallel&lt;br /&gt;
* Cron processes use locking to prevent the same task running at the same time by different processes&lt;br /&gt;
* Clusters with multiple identical application nodes are supported, you can run cron on all of them&lt;br /&gt;
&lt;br /&gt;
A result of this is that cron can be run much more often, which means (for example) forum posts can be sent out sooner.  To take advantage of the new cron system it is now strongly recommended that administrators increase the frequency that cron is run to at least &#039;&#039;once per minute&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
You also may need to modify any automated scripts you have that are parsing the output from cron. It is no longer possible to simply monitor the output of cron for the string &amp;quot;Cron script completed correctly&amp;quot; (if that is what you were doing). An alternative is to monitor the output for the string &amp;quot;task failed:&amp;quot;. If you detect that a task is failing, [[Cron#Debugging_Scheduled_Tasks|here]] are some tips for debugging the failure. &lt;br /&gt;
&lt;br /&gt;
Before the upgrade to 2.8, there may have been a cron task that was failing, which was preventing the rest of cron from being executed. A failure in any single task will no longer prevent the rest of the Moodle cron tasks from executing, so you may uncover previously masked bugs. It is a good idea to closely monitor the output from cron after the upgrade to 2.8.&lt;br /&gt;
&lt;br /&gt;
===Assignments===&lt;br /&gt;
&lt;br /&gt;
The old assignment (2.2) module has been removed from core and has been replaced by a stub to support transparently remapping URLs and restoring course backups from the old module to the new one. &lt;br /&gt;
&lt;br /&gt;
If you are still using the old assignment (2.2) module, after upgrading to Moodle 2.8 all assignment (2.2) activities will be hidden. You need to run the [[Assignment upgrade tool]] to un-hide the activities.&lt;br /&gt;
&lt;br /&gt;
If you really, really need to keep using the old assignment (2.2) module, you should update the code to Moodle 2.8, and then replace the &amp;quot;mod/assignment&amp;quot; folder with the one from https://github.com/moodlehq/moodle-mod_assignment/releases before completing the upgrade.&lt;br /&gt;
&lt;br /&gt;
==Possible issues that may affect you in Moodle 2.8==&lt;br /&gt;
&lt;br /&gt;
===New aggregation method - &#039;Natural&#039;===&lt;br /&gt;
&lt;br /&gt;
The aggregation method &#039;Sum of grades&#039; used in the [[Grades|gradebook]] has been reviewed, significantly improved and renamed to &#039;Natural&#039;. It is recommended that &#039;Natural&#039; is set as the default aggregation method, as for new Moodle 2.8 installs.&lt;br /&gt;
&lt;br /&gt;
In addition, the aggregation setting &#039;Aggregate including subcategories&#039; has been removed.&lt;br /&gt;
&lt;br /&gt;
Any courses previously using either &#039;Sum of grades&#039; and/or &#039;Aggregate including subcategories&#039; may have some changes to grades. Thus it is recommended that grades in the gradebook are reviewed for such courses.&lt;br /&gt;
&lt;br /&gt;
===Teachers able to enrol users via the cohort sync enrolment method===&lt;br /&gt;
&lt;br /&gt;
Teachers will get access to [[Cohort sync]] enrolment method if it is enabled, remove capability to use this enrolment method from teachers if you want to preserve 2.7 behaviour. See MDL-36014&lt;br /&gt;
&lt;br /&gt;
===Gradebook scrolling and theme issues===&lt;br /&gt;
Themes with non-fixed headers must have the .navbar class in their navbar in order for floating headers in the grader report to work - see MDL-46658 for more information.&lt;br /&gt;
&lt;br /&gt;
===Removal of the &#039;Group members only&#039; experimental setting===&lt;br /&gt;
&lt;br /&gt;
The experimental setting &#039;Group members only&#039; has been removed in Moodle 2.8. The group and grouping restrictions in [[Conditional activities settings|conditional activities]] now provide this functionality. Any &#039;Available for group members only&#039; instances are automatically converted to group or grouping restrictions when a site is upgraded.&lt;br /&gt;
&lt;br /&gt;
* &#039;Available for group members only&#039; instances with no grouping selected are converted to a &#039;Must belong to any group&#039; restriction.&lt;br /&gt;
* &#039;Available for group members only&#039; instances with a grouping specified are converted to a &#039;Must belong to the specific grouping&#039; restriction.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;More items to be added here...&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Moodle 2.3, 2.4, 2.5, 2.6 and 2.7 improvements ===&lt;br /&gt;
&lt;br /&gt;
Depending on which version you are upgrading from, please see the section &#039;Possible issues that may affect you&#039; in the documentation&lt;br /&gt;
&lt;br /&gt;
* [https://docs.moodle.org/23/en/Upgrading Upgrading to Moodle 2.3]&lt;br /&gt;
* [https://docs.moodle.org/24/en/Upgrading Upgrading to Moodle 2.4]&lt;br /&gt;
* [https://docs.moodle.org/25/en/Upgrading Upgrading to Moodle 2.5]&lt;br /&gt;
* [https://docs.moodle.org/26/en/Upgrading Upgrading to Moodle 2.6]&lt;br /&gt;
* [https://docs.moodle.org/27/en/Upgrading Upgrading to Moodle 2.7]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
* [[Installation]]&lt;br /&gt;
* Using Moodle [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum] &lt;br /&gt;
* [[dev:Moodle 2.8 release notes|Moodle 2.8 release notes]]&lt;br /&gt;
&lt;br /&gt;
[[es:Actualización de moodle]]&lt;br /&gt;
[[fr:Mise à jour]]&lt;br /&gt;
[[ja:Moodleをアップグレードする]]&lt;br /&gt;
[[de:Aktualisierung von Moodle]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=MySQL&amp;diff=116516</id>
		<title>MySQL</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=MySQL&amp;diff=116516"/>
		<updated>2014-12-10T15:34:38Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Creating Moodle database */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
MySQL is one of the supported databases that underpins a Moodle installation. &lt;br /&gt;
&lt;br /&gt;
== Installing MySQL ==&lt;br /&gt;
&lt;br /&gt;
* If you are running Linux your preference should be to install using your distributions package manager. This ensures you will get any available updates. &lt;br /&gt;
* There are installers available for most popular operating systems at http://www.mysql.com/downloads/mysql/.&lt;br /&gt;
* It is possible and reasonably straightforward to build mysql from source but it is not recommended (the pre-built binaries are supposedly better optimised).&lt;br /&gt;
* Make sure you set a password for the &#039;root&#039; user (see http://dev.mysql.com/doc/refman/5.0/en/default-privileges.html).&lt;br /&gt;
* Consider installing and configuring my.cnf (the MySQL settings file) to suit your needs. The default configuration is usually very conservative in respect of memory usage versus performance. Increase the &#039;max_allowed_packet&#039; setting to at least 4 megabytes.&lt;br /&gt;
&lt;br /&gt;
== Creating Moodle database ==&lt;br /&gt;
&lt;br /&gt;
These are the steps to create an empty Moodle database. Substitute your own database name, user name and password as appropriate.&lt;br /&gt;
&lt;br /&gt;
The instructions assume that the web server and MySQL server are on the same machine. In this case the &#039;dbhost&#039; is &#039;localhost&#039;. If they are on different machines substitute the name of the web server for &#039;localhost&#039; in the following instructions and the &#039;dbhost&#039; setting will be the name of the database server. &lt;br /&gt;
Databases have a &amp;quot;Character set&amp;quot; and a &amp;quot;Collation&amp;quot;. For moodle the character set should be utf8 and the collation is utf8_general_ci. You may get the option to set these values when you create the database. If you are not given a choice, the default options are probably good. An install on an old server may have the wrong settings.&lt;br /&gt;
&lt;br /&gt;
=== Command line === &lt;br /&gt;
&lt;br /&gt;
* To create a database using the &#039;mysql&#039; command line client, first log into MySQL&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ mysql -u root -p&lt;br /&gt;
Enter password: &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(Enter the password you previously set - or been given - for the MySQL &#039;root&#039; user). After some pre-amble this should take you to the &#039;&#039;mysql&amp;gt;&#039;&#039; prompt.&lt;br /&gt;
* Create a new database (called &#039;moodle&#039; - substitute your own name if required).  We recommend you use &#039;&#039;&#039;utf8_unicode_ci&#039;&#039;&#039; for collation.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mysql&amp;gt; CREATE DATABASE moodle DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Add a user/password with the minimum needed permissions:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mysql&amp;gt; GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO moodleuser@localhost IDENTIFIED BY &#039;yourpassword&#039;;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
...which creates a user called &#039;moodleuser&#039; with a password &#039;yourpassword&#039;. Make sure you invent a strong password and resist the temptation to &#039;GRANT ALL&#039;.&lt;br /&gt;
&lt;br /&gt;
=== phpMyAdmin ===&lt;br /&gt;
&lt;br /&gt;
[http://www.phpmyadmin.net/ phpMyAdmin] is a web based administration tool for MySQL. If this is available you can use it to create a new database. Make sure that you select &#039;UTF8&#039; as the default character set.&lt;br /&gt;
&lt;br /&gt;
==Which database belongs to which Moodle==&lt;br /&gt;
If you have installed several Moodle installations on the same server, there will be several several databases in your MySQL server. The names might be quite poor reflections of the content like  _mdl1 _mdl2 _mdl3 . So how do I see which database goes with which Moodle installation? You can go in with phpMyAdmin and in the various databases check for the table &amp;quot;mdl_course&amp;quot;. There you will easily see the name of that Moodle Installation.  In table mdl_config you can see the Moodle version. (Where can one find the home relative URL of the Moodle installation?)&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [http://www.mysql.com/ The MySQL homepage]&lt;br /&gt;
* [http://en.wikipedia.org/wiki/MySQL Wikipedia article about &#039;&#039;MySQL&#039;&#039;]&lt;br /&gt;
* [http://forums.mysql.com/read.php?24,92131,92131 List of articles on MySQL performance tuning]&lt;br /&gt;
&lt;br /&gt;
[[Category:SQL databases]]&lt;br /&gt;
&lt;br /&gt;
[[ja:MySQL]]&lt;br /&gt;
[[de:MySQL]]&lt;br /&gt;
[[es:MySQL]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116514</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116514"/>
		<updated>2014-12-10T14:19:23Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]). These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_28_STABLE --single-branch git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.8 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of the previous command is to allow the Apache user account (www-data in this case) to access and change files within the moodle site. Many people would consider this a brave move for a new site admin to implement. In a new moodle you can safely leave this out. A default Ubuntu install does not have the +a option for the chmod command anyway. The +a attribute is an ACL (Access Control List) facility which allows you to set per user access for individual files. For example, OSX has this by default.&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions. &lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date.&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116513</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116513"/>
		<updated>2014-12-10T14:09:00Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]). These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_28_STABLE --single-branch git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.8 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The effect of the previous command is to allow the Apache user account (www-data in this case) to access to change files in the site. In a new moodle you can safely leave this out.) A default Ubuntu install does not have the +a option for the chmod command anyway.&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions. &lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date.&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116512</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116512"/>
		<updated>2014-12-10T14:07:08Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]). These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_28_STABLE --single-branch git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.8 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data: The effect of this command is to all the Apache user account (www-data in this case) to access to change files in the site. In a new moodle you can safely leave this out.)&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions. &lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date.&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116511</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116511"/>
		<updated>2014-12-10T14:02:33Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]). These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_28_STABLE --single-branch git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.8 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
&lt;br /&gt;
The third command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions. &lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date.&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116510</id>
		<title>Installing Moodle</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installing_Moodle&amp;diff=116510"/>
		<updated>2014-12-10T13:22:46Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Added clarification to a command line expression.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Template:Installing Moodle}}&lt;br /&gt;
&#039;&#039;This page explains how to install Moodle. If you are an expert and/or in a hurry try [[Installation Quickstart]].&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
If you just want to try Moodle on a standalone machine there are &#039;one-click&#039; installers for Windows (see [[Complete install packages for Windows]]) and for OSX (see [[Complete Install Packages for Mac OS X]]). These are unsuitable for production servers. &lt;br /&gt;
&lt;br /&gt;
== Requirements ==&lt;br /&gt;
&lt;br /&gt;
Moodle is primarily developed in Linux using [[Apache]], [[PostgreSQL]]/[[MySQL]]/[[MariaDB]] and [[PHP]] (also sometimes known as the LAMP platform). If in doubt, this is the safest combination (if for no other reason than being the most common). There are other options - see the Software section that follows:&lt;br /&gt;
&lt;br /&gt;
If you are installing Moodle in a Windows server, note that from php5.5 onwards, you will also need to have  the Visual C++ Redistributable for Visual Studio 2012 installed from:&lt;br /&gt;
http://www.microsoft.com/en-us/download/details.aspx?id=30679 Visual C++] ( x86 or x64)  &lt;br /&gt;
&lt;br /&gt;
The basic requirements for Moodle are as follows:&lt;br /&gt;
&lt;br /&gt;
=== Hardware === &lt;br /&gt;
* Disk space: 160MB free (min) plus as much as you need to store your materials. 5GB is probably a realistic minimum. &lt;br /&gt;
* Processor: 1GHz (min), 2GHz dual core recommended. These settings may vary according to the resources used.&lt;br /&gt;
* Backups: at least the same again (at a remote location preferably) as above to keep backups of your site.&lt;br /&gt;
* Memory: 256MB (min), 1GB or more is strongly recommended. The general rule of thumb is that Moodle can support 10 to 20 &#039;&#039;concurrent&#039;&#039; users for every 1GB of RAM, but this will vary depending on your specific hardware and software combination and the type of use. &#039;Concurrent&#039; really means web server processes in memory at the same time (i.e. users interacting with the system within a window of a few seconds). It does NOT mean people &#039;logged in&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Software ===&lt;br /&gt;
&lt;br /&gt;
See the [{{Release notes}} release notes] in the dev docs for software requirements.&lt;br /&gt;
&lt;br /&gt;
== Set up your server ==&lt;br /&gt;
&lt;br /&gt;
...or desktop computer, if you are just evaluating Moodle. There are lots of possibilities for installing the basic server software depending on your particular choices. Some links and pointers are at [[Installing AMP]]&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted server all this should be done for you. However, (especially on shared hosting) make sure you understand or find out how to change PHP settings (e.g. file upload maximums). This can vary a huge amount from host to host.&lt;br /&gt;
&lt;br /&gt;
== Download and copy files into place ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT: While there are now a number of places you can get the Moodle code, you are strongly advised to obtain Moodle from moodle.org. If you run into problems it will be a great deal easier to support you.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You have two options:&lt;br /&gt;
* Download your required version from http://moodle.org/downloads and unzip/unpack...&lt;br /&gt;
* &#039;&#039;&#039;OR&#039;&#039;&#039; Pull the code from the Git repository (recommended for developers and also makes upgrading very simple):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ git clone --depth=1 -b MOODLE_28_STABLE --single-branch git://git.moodle.org/moodle.git &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
--depth=1  for shallow cloning (only) latest revision&lt;br /&gt;
&lt;br /&gt;
--single-branch  option to limit cloning to a single branch, this fetches the Moodle 2.8 Stable branch (latest weekly build). For a fuller discussion see [[Git for Administrators]]. &lt;br /&gt;
&lt;br /&gt;
Either of the above should result in a directory called &#039;&#039;&#039;moodle&#039;&#039;&#039;, containing a number of files and folders. &lt;br /&gt;
&lt;br /&gt;
You can either place the whole folder in your web server documents directory, in which case the site will be located at &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com/moodle&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;, or you can copy all the contents straight into the main web server documents directory, in which case the site will be simply &#039;&#039;&#039;&amp;lt;nowiki&amp;gt;http://yourwebserver.com&amp;lt;/nowiki&amp;gt;&#039;&#039;&#039;. See the documentation for your system and/or web server if you are unsure. &lt;br /&gt;
&lt;br /&gt;
:&#039;&#039;Tip:&#039;&#039; If you are downloading Moodle to your local computer and then uploading it to your hosted web site, if possible upload the compressed file and decompress at the remote end (check your &#039;file manager&#039;). Failing that, watch FTP progress carefully for errors or missed files.&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Secure the Moodle files:&#039;&#039;&#039; It is vital that the files are not writeable by the web server user. For example, on Unix/Linux (as root):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
# chmod -R 0755 /path/to/moodle&lt;br /&gt;
# find /path/to/moodle -type f -exec chmod 0644 {} \;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
(files are owned by the administrator/superuser and are only writeable by them - readable by everyone else)&lt;br /&gt;
The command finds all the regular files and executes the chmod command 0644 on them. &lt;br /&gt;
&lt;br /&gt;
If you want to use the built-in plugin installer you need to make the directory writable by web server user. It is strongly recommended to use ACL when your server supports it, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Create an empty database ==&lt;br /&gt;
&lt;br /&gt;
Next create a new, empty database for your installation. You need to find and make a note of following information for use during the final installation stage:&lt;br /&gt;
* &#039;&#039;&#039;dbhost&#039;&#039;&#039; - the database server hostname. Probably &#039;&#039;localhost&#039;&#039; if the database and web server are the same machine, otherwise the name of the database server&lt;br /&gt;
* &#039;&#039;&#039;dbname&#039;&#039;&#039; - the database name. Whatever you called it, e.g. &#039;&#039;moodle&#039;&#039; &lt;br /&gt;
* &#039;&#039;&#039;dbuser&#039;&#039;&#039; - the username for the database. Whatever you assigned, e.g. &#039;&#039;moodleuser&#039;&#039; - do not use the root/superuser account. Create a proper account with the minimum permissions needed.&lt;br /&gt;
* &#039;&#039;&#039;dbpass&#039;&#039;&#039; - the password for the above user&lt;br /&gt;
&lt;br /&gt;
If your site is hosted you should find a web-based administration page for databases as part of the control panel (or ask your administrator). For everyone else or for detailed instructions, see the page for your chosen database server:&lt;br /&gt;
* [[PostgreSQL]]&lt;br /&gt;
* [[MariaDB]]&lt;br /&gt;
* [[MySQL]]&lt;br /&gt;
* [[MSSQL]]&lt;br /&gt;
* [[Oracle]] (known issues, not fully supported)&lt;br /&gt;
&lt;br /&gt;
== Create the (&#039;&#039;moodledata&#039;&#039;) data directory  ==&lt;br /&gt;
&lt;br /&gt;
Moodle requires a directory to store all of its files (all your site&#039;s uploaded files, temporary data, cache, session data etc.). The web server needs to be able to write to this directory. On larger systems consider how much free space you are going to use when allocating this directory. &lt;br /&gt;
&lt;br /&gt;
Due to the way Moodle caches data you may have performance issues if you use relatively slow storage (e.g. NFS) for this directory. Read the [[Performance_recommendations]] carefully and consider using (e.g.) memcached for [[Caching]].&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;IMPORTANT:&#039;&#039;&#039; This directory must &#039;&#039;&#039;NOT&#039;&#039;&#039; be accessible directly via the web. This would be a serious security hole. Do not try to place it inside your web root or inside your Moodle program files directory. Moodle will not install. It can go anywhere else convenient. &lt;br /&gt;
&lt;br /&gt;
Here is an example (Unix/Linux) of creating the directory and setting the permissions for &#039;&#039;&#039;anyone&#039;&#039;&#039; on the server to write here. This is only appropriate for Moodle servers that are not shared. Discuss this with your server administrator for better permissions that just allow the web server user to access these files.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# mkdir /path/to/moodledata&lt;br /&gt;
# chmod 0777 /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If your server supports ACL it is recommended to set following permissions, for example if your Apache server uses account www-data:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chmod -R +a &amp;quot;www-data allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
If you are planning to execute PHP scripts from the command line you should set the same permissions for the current user:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ sudo chmod -R +a &amp;quot;`whoami` allow read,delete,write,append,file_inherit,directory_inherit&amp;quot; /path/to/moodledata&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Securing moodledata in a web directory ====&lt;br /&gt;
&lt;br /&gt;
If you are using a hosted site and you have no option but to place &#039;moodledata&#039; in a web accessible directory. You may be able to secure it by creating an .htaccess file in the &#039;moodledata&#039; directory. This does not work on all systems - see your host/administrator. Create a file called .htaccess containing only the following lines:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
order deny,allow&lt;br /&gt;
deny from all&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Start Moodle install ==&lt;br /&gt;
It&#039;s now time to run the installer to create the database tables and configure your new site. The recommended method is to use the command line installer. If you cannot do this for any reason (e.g. on a Windows server) the web based installer is still available.&lt;br /&gt;
&lt;br /&gt;
=== Command line installer ===&lt;br /&gt;
&lt;br /&gt;
It&#039;s best to run the command line as your system&#039;s web user. You need to know what that is - see your system&#039;s documentation (e.g. Ubuntu/Debian is &#039;www-data&#039;, Centos is &#039;apache&#039;)&lt;br /&gt;
&lt;br /&gt;
* Example of using the command-line  (as root - substitute &#039;www-data&#039; for your web user):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# chown www-data /path/to/moodle&lt;br /&gt;
# cd /path/to/moodle/admin/cli&lt;br /&gt;
# sudo -u www-data /usr/bin/php install.php&lt;br /&gt;
# chown -R root /path/to/moodle&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
The chowns allow the script to write a new config.php file. More information about the options can be found using &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# php install.php --help&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
You will be asked for other settings that have not been discussed on this page - if unsure just accept the defaults. For a full discussion see [[Administration via command line]]&lt;br /&gt;
&lt;br /&gt;
=== Web based installer ===&lt;br /&gt;
To run the web installer script, just go to your Moodle&#039;s main URL using a web browser.&lt;br /&gt;
&lt;br /&gt;
The installation process will take you through a number of pages. You should be asked to confirm the copyright, see the database tables being created, supply administrator account details and supply the site details. The database creation can take some time - please be patient. You should eventually end up at the Moodle front page with an invitation to create a new course. &lt;br /&gt;
&lt;br /&gt;
It is very likely that you will be asked to download the new config.php file and upload it to your Moodle installation - just follow the on-screen instructions. &lt;br /&gt;
&lt;br /&gt;
==Final configuration==&lt;br /&gt;
&lt;br /&gt;
=== Settings within Moodle ===&lt;br /&gt;
There are a number of options within the Moodle Site Administration screens (accessible from the &#039;Site administration&#039; tab in the &#039;Administration&#039; block. Here are a few of the more important ones that you will probably want to check:&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message Outputs &amp;gt; Email&#039;&#039;: Set your smtp server and authentication if required (so your Moodle site can send emails). The support contact for your site is also set on this page. &lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; System paths&#039;&#039;: Set the paths to du, dot and aspell binaries.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Server &amp;gt; HTTP&#039;&#039;: If you are behind a firewall you may need to set your proxy credentials in the &#039;Web proxy&#039; section.&lt;br /&gt;
* &#039;&#039;Administration &amp;gt; Site administration &amp;gt; Location &amp;gt; Update timezones&#039;&#039;: Run this to make sure your timezone information is up to date.&lt;br /&gt;
&lt;br /&gt;
=== Remaining tasks ===&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;Configure Cron&#039;&#039;&#039;: Moodle&#039;s background tasks (e.g. sending out forum emails and performing course backups) are performed by a script which you can set to execute at specific times of the day. This is known as a cron script. Please refer to the [[Cron|Cron instructions]].&lt;br /&gt;
* &#039;&#039;&#039;Set up backups&#039;&#039;&#039;: See [[Site backup]] and [[Automated course backup]].&lt;br /&gt;
* &#039;&#039;&#039;Check mail works&#039;&#039;&#039;: [[Add a new user|Create a test user]] with a valid email address and [[message|send them a message]]. Do they receive an email copy of the message? If not, check the settings in &#039;&#039;Settings &amp;gt; Site administration &amp;gt; Plugins &amp;gt; Message outputs &amp;gt; Email&#039;&#039;. Don&#039;t be tempted to skip this step (clue: email is used to recover lost passwords, including the administrator password when you forget it!)&lt;br /&gt;
* &#039;&#039;&#039;Secure your Moodle site&#039;&#039;&#039;: Read the [[Security recommendations]].&lt;br /&gt;
*&#039;&#039;&#039;Increasing the maximum upload size&#039;&#039;&#039;  See [[Installation FAQ]] Maximum upload file size - how to change it?&lt;br /&gt;
&lt;br /&gt;
=== Installation is complete :) ===&lt;br /&gt;
&lt;br /&gt;
* Create a new course: You can now [[Adding a new course|create a new course]] and have a play ;-)&lt;br /&gt;
&lt;br /&gt;
=== If something goes wrong... ===&lt;br /&gt;
&lt;br /&gt;
Here are some things you should try...&lt;br /&gt;
&lt;br /&gt;
* Check the [[Installation FAQ]]&lt;br /&gt;
* Check your file permissions carefully. Can your web server read (but not write) the Moodle program files? Can your web server read and write your Moodle data directory?&lt;br /&gt;
* Check your database permissions. Have you set up your database user with the correct rights and permissions for your configuration (especially if the web server and database server are different machines)?&lt;br /&gt;
* Create your [[Configuration file]] (config.php) by hand. Copy config-dist.php (in the root of the Moodle program directory) to config.php, edit it and set your database/site options there. Installation will continue from the right place. &lt;br /&gt;
* Once you have a config.php (see previous tip) you can edit it to turn on debugging (in section 8). This may give you extra information to help track down a problem. If you have access, check your web server error log(s).&lt;br /&gt;
* Re-check your php.ini / .htaccess settings. Are they appropriate (e.g. memory_limit), did you edit the correct php.ini / .htaccess file and (if required) did you re-start the web server after making changes?&lt;br /&gt;
* Did you include any non-core (optional) plugins, themes or other code before starting the installation script? If so, remove it and try again (it may be broken or incompatible).&lt;br /&gt;
* Explain your problem in the [http://moodle.org/mod/forum/view.php?id=28 Installation problems forum]. &#039;&#039;&#039;PLEASE&#039;&#039;&#039; list your software versions; explain what you did, what happened and what error messages you saw (if any); explain what you tried. There is no such thing as &#039;nothing&#039;, even a blank page is something!&lt;br /&gt;
&lt;br /&gt;
== Platform specific instructions ==&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Much of this information is provided by the community. It may not have been checked and may be out of date. Please read in conjunction with the above installation instructions.&lt;br /&gt;
&lt;br /&gt;
* [[Windows installation]]&lt;br /&gt;
** [[Installing Moodle on SmarterASP.NET]]&lt;br /&gt;
* [[Unix or Linux Installation]]&lt;br /&gt;
* [[Mac Installation]]&lt;br /&gt;
* [[Amazon EC2 Cloud Services Installation]]&lt;br /&gt;
&lt;br /&gt;
== See also ==&lt;br /&gt;
* [http://www.slideshare.net/gb2048/my-own-moodle Slideshare presentation by Gareth Barnard on installing a local installation of Moodle] and accompanying [https://drive.google.com/folderview?id=0B17B0rYH2zERU21sQnVweUZCUFk&amp;amp;usp=sharing  help guides]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=182086 New Video Tutorial- How to Install Moodle on Shared Hosting via cPanel (Not Fantastico)]&lt;br /&gt;
* [http://moodle.org/mod/forum/discuss.php?d=199542 Video Tutorial - Install Moodle on a Virtual Box from scratch] &lt;br /&gt;
&lt;br /&gt;
[[es:Instalaci%C3%B3n_de_moodle]]&lt;br /&gt;
[[de:Installation von Moodle]]&lt;br /&gt;
[[fr:Installation de Moodle]]&lt;br /&gt;
[[ja:Moodleのインストール]]&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96877</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96877"/>
		<updated>2012-04-10T12:23:06Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* To ensure that utf8 is used by mysql */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows (I have found that the precise lines required seem to vary as time goes on)&lt;br /&gt;
Back up my.cnf first with &lt;br /&gt;
 cp /etc/my.cnf /etc/mycnf.original&lt;br /&gt;
&lt;br /&gt;
Then edit to read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
Check that mysql restarts with &lt;br /&gt;
 service mysqld restart&lt;br /&gt;
&lt;br /&gt;
NB edit. Later with FC16 I found that I needed to make my.cnf read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 # Settings user and group are ignored when systemd is used.&lt;br /&gt;
 # If you need to run mysqld under different user or group, &lt;br /&gt;
 # customize your systemd unit file for mysqld according to the&lt;br /&gt;
 # instructions in http://fedoraproject.org/wiki/Systemd&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
To give apache ownership do&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96876</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96876"/>
		<updated>2012-04-10T12:22:37Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* To ensure that utf8 is used by mysql */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows (I have found that the precise lines required seem to vary as time goes on)&lt;br /&gt;
Back up my.cnf first with &lt;br /&gt;
 cp /etc/my.cnf /etc/mycnf.original&lt;br /&gt;
&lt;br /&gt;
Then edit to read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
Check that mysql restarts with &lt;br /&gt;
&lt;br /&gt;
NB edit. Later with FC16 I found that I needed to make my.cnf read&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 # Settings user and group are ignored when systemd is used.&lt;br /&gt;
 # If you need to run mysqld under different user or group, &lt;br /&gt;
 # customize your systemd unit file for mysqld according to the&lt;br /&gt;
 # instructions in http://fedoraproject.org/wiki/Systemd&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
To give apache ownership do&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96875</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96875"/>
		<updated>2012-04-10T12:20:08Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* To ensure that utf8 is used by mysql */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows (I have found that the precise lines required seem to vary as time goes on)&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
To give apache ownership do&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96874</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96874"/>
		<updated>2012-04-10T12:01:59Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
To give apache ownership do&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96873</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96873"/>
		<updated>2012-04-10T12:01:05Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Also, you may give the apache user ownership of the site, this way, when you install, the script will be able to create the config.php file.&lt;br /&gt;
If you leave the owner as root, you will have to paste the suggested config.php into /var/www/html/moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Installation_Guide_for_Installing_on_Amazon_EC2&amp;diff=96872</id>
		<title>Installation Guide for Installing on Amazon EC2</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Installation_Guide_for_Installing_on_Amazon_EC2&amp;diff=96872"/>
		<updated>2012-04-10T11:27:00Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Set up MYSQL */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Installing Moodle}}&lt;br /&gt;
An ec2 instance is a virtual web server that can be rented out by the hour from Amazon. Prices vary depending on the power of the instance you rent out.&lt;br /&gt;
&lt;br /&gt;
I recommend the following book for background reading on Amazon EC2 &amp;quot;Host Your Web Site in the Cloud: Amazon Web Services Made Easy&lt;br /&gt;
by Jeff Barr Copyright ©2010 Amazon Web Services&amp;quot; This is the official Amazon book on their web services and tells you how to set up a web server on an ec2 instance.&lt;br /&gt;
&lt;br /&gt;
The instructions below are one way in which to set up Moodle on an EC2 instance.&lt;br /&gt;
&lt;br /&gt;
==Rent an ec2 instance==&lt;br /&gt;
&lt;br /&gt;
You can set up an account with Amazon Web Services and rent out a ec2 instance here [http://aws.amazon.com/console/ The Amazon Web Service Console]&lt;br /&gt;
&lt;br /&gt;
I used an instance of the [http://aws.amazon.com/amazon-linux-ami/ Amazon Linux AMI] based on Elastic Block Store. Using an instance based on an Elastic Block Store gives you more options for backing up your disks later. The &amp;quot;[http://aws.amazon.com/amazon-linux-ami/ Amazon Linux AMI]&amp;quot; is based on CentOS and is a pared down version of linux with only the bare essentials included, that should be more secure. You can use the yum command to install anything extra necessary on your server.&lt;br /&gt;
&lt;br /&gt;
===Attach an &#039;elastic ip&#039; and open necessary ports on firewall===&lt;br /&gt;
&lt;br /&gt;
Again through the [http://aws.amazon.com/console/ The Amazon Web Service Console] :&lt;br /&gt;
&lt;br /&gt;
* I created and attached an elastic ip address to the ec2 instance I had launched with the [http://aws.amazon.com/amazon-linux-ami/ Amazon Linux AMI].&lt;br /&gt;
* I opened ports 22 and 80. For my purposes I did not intend to make the server accessible through https so these were sufficient.&lt;br /&gt;
&lt;br /&gt;
You may want to map a domain name to point to your elastic IP address. You will need a dns provider to do this. Amazon does not provide this service at the time of writing.&lt;br /&gt;
&lt;br /&gt;
==Connect to your ec2 instance with putty or another ssh client==&lt;br /&gt;
&lt;br /&gt;
Through the [http://aws.amazon.com/console/ The Amazon Web Service Console] you can set up an ssh key and attach it to the ec2 instance you have running.&lt;br /&gt;
&lt;br /&gt;
Your username for an ec2 instance using the Linux AMI will be ec2-user and no password will be required if you have the private key set up correctly.&lt;br /&gt;
&lt;br /&gt;
===Accessing ec2 instance using putty ssh client===&lt;br /&gt;
&lt;br /&gt;
In order for this key to work with putty on Windows you need to import it using puttygen and then save the private key in a safe location possibly with a pass phrase (local password) to protect it. You can then associate the key file with the ssh connection in putty by opening settings in Connection/SSH/Auth and browsing for the correct &#039;Private Key for Authentication&#039;&lt;br /&gt;
&lt;br /&gt;
==Setting up a web server on Amazon Linux AMI==&lt;br /&gt;
&lt;br /&gt;
Make sure all your currently installed packages are up to date.&lt;br /&gt;
&lt;br /&gt;
    sudo yum -y update&lt;br /&gt;
&lt;br /&gt;
You use yum to install all the software you need on your server. You can use the following command to install apache, mysql and php and the php extensions and all dependencies required by Moodle with this command :&lt;br /&gt;
&lt;br /&gt;
    sudo yum -y install aspell aspell-en aspell-fr aspell-es cvs httpd mysql mysql-server php php-cli php-gd php-intl php-mbstring php-mysql php-pdo php-soap php-xml php-xmlrpc php-pspell&lt;br /&gt;
&lt;br /&gt;
You can list all your installed packages (including dependencies) with this command :&lt;br /&gt;
&lt;br /&gt;
    sudo yum list installed&lt;br /&gt;
&lt;br /&gt;
===Start server services and have them start up automatically on a reboot===&lt;br /&gt;
&lt;br /&gt;
Configure the new services to start automatically.&lt;br /&gt;
&lt;br /&gt;
    sudo  /sbin/chkconfig httpd on&lt;br /&gt;
    sudo   /sbin/chkconfig mysqld on&lt;br /&gt;
    &lt;br /&gt;
    sudo  /sbin/service httpd start&lt;br /&gt;
    sudo   /sbin/service mysqld start&lt;br /&gt;
&lt;br /&gt;
===Edit httpd.conf===&lt;br /&gt;
&lt;br /&gt;
If you need to edit httpd.conf it is in  /etc/httpd/conf&lt;br /&gt;
&lt;br /&gt;
But by default the directory /var/www/html/ is the root web directory and you can install Moodle in there.&lt;br /&gt;
&lt;br /&gt;
If you do edit httpd.conf then you must restart apache using this command for the changes to take effect :&lt;br /&gt;
&lt;br /&gt;
    sudo  /sbin/service httpd restart&lt;br /&gt;
&lt;br /&gt;
==Set up MYSQL==&lt;br /&gt;
&lt;br /&gt;
 sudo mysqladmin -u root password &#039;new-password&#039;&lt;br /&gt;
&lt;br /&gt;
Make additional security-related changes to mysql. This can be done very easily with the command &amp;quot;mysql_secure_installation&amp;quot; and answering conservatively.&lt;br /&gt;
&lt;br /&gt;
 sudo mysql -u root -p&lt;br /&gt;
&lt;br /&gt;
 mysql&amp;gt; DROP DATABASE test;                            [removes the test database]&lt;br /&gt;
 mysql&amp;gt; DELETE FROM mysql.user WHERE user = &#039;&#039;;        [Removes anonymous access]&lt;br /&gt;
 mysql&amp;gt; FLUSH PRIVILEGES;&lt;br /&gt;
&lt;br /&gt;
==Install Moodle==&lt;br /&gt;
&lt;br /&gt;
Now you need to :&lt;br /&gt;
&lt;br /&gt;
* Install the version of Moodle required. I recommend using CVS to install Moodle. See [[CVS for Administrators]].&lt;br /&gt;
* Create Moodle site database&lt;br /&gt;
* [[Creating Moodle site data directory]]&lt;br /&gt;
* [[Cron#Using_the_crontab_program_on_Unix|Set up cron using crontab command]]&lt;br /&gt;
&lt;br /&gt;
Install Moodle by going to http://youelasticipaddress/roottoyourmoodleserver/ (if you have set up a domain name to point to your elasticip address then you should use that of course)&lt;br /&gt;
&lt;br /&gt;
Copy the config.php that the installer creates and then go to the root of your moodleserver and do :&lt;br /&gt;
&lt;br /&gt;
    sudo vi config.php&lt;br /&gt;
&lt;br /&gt;
Then type i to put vi in insert mode and on putty you can use the right mouse key to paste the contents of the clipboard, then delete the former contents.&lt;br /&gt;
&lt;br /&gt;
Then go again to the root of your Moodle installation http://youelasticipaddress/roottoyourmoodleserver/ and complete the automatic installation of your Moodle db.&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96871</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96871"/>
		<updated>2012-04-10T11:18:09Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch and do permissions on moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96870</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=96870"/>
		<updated>2012-04-10T11:17:35Z</updated>

		<summary type="html">&lt;p&gt;T100ss: chown moodle not necessary for web site&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Talk:Installing_Moodle_on_Debian_based_distributions&amp;diff=95872</id>
		<title>Talk:Installing Moodle on Debian based distributions</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Talk:Installing_Moodle_on_Debian_based_distributions&amp;diff=95872"/>
		<updated>2012-02-15T08:01:51Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;TODO &lt;br /&gt;
Suggest that the mysql secure utility is used. I refer to it in my Amazon EC2 install page. Copy &amp;amp; paste from there.&lt;br /&gt;
Mention the various extra that need to be installed php-pear etc.&lt;br /&gt;
Test php by using a phpinfo page&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Talk:Installing_Moodle_on_Debian_based_distributions&amp;diff=95870</id>
		<title>Talk:Installing Moodle on Debian based distributions</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Talk:Installing_Moodle_on_Debian_based_distributions&amp;diff=95870"/>
		<updated>2012-02-15T07:58:20Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Created page with &amp;quot;Suggest that the mysql secure utility is mentioned. I refer to it in my Amazon EC2 install page.&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Suggest that the mysql secure utility is mentioned. I refer to it in my Amazon EC2 install page.&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95590</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95590"/>
		<updated>2012-01-31T08:52:01Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* In order to make sure php is included when httpd comes up */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589))&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Do the same for ownership as you did for moodledata. The -R makes the chown (change owner) recursive.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95589</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95589"/>
		<updated>2012-01-31T08:12:34Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* In order to make sure php is included when httpd comes up */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.so but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589)&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Do the same for ownership as you did for moodledata. The -R makes the chown (change owner) recursive.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95527</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95527"/>
		<updated>2012-01-29T11:21:14Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch and do permissions on moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589)&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
Do the same for ownership as you did for moodledata. The -R makes the chown (change owner) recursive.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95526</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95526"/>
		<updated>2012-01-29T11:20:03Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch and do permissions on moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589)&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a directory called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95525</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95525"/>
		<updated>2012-01-29T11:19:26Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Create moodledata folder */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589)&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
Next, give the apache user all the access rights to moodledata. This is better than chmod 777 which some users seem to do.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95506</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95506"/>
		<updated>2012-01-26T15:48:09Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* In order to make sure php is included when httpd comes up */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here (http://moodle.org/mod/forum/discuss.php?d=194589)&lt;br /&gt;
Attached to a forum post. Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95505</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95505"/>
		<updated>2012-01-26T15:46:43Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. &lt;br /&gt;
The assumptions are that you have an Amazon 32 bit EC2 Linux server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here {http://moodle.org/mod/forum/discuss.php?d=194589]&lt;br /&gt;
Attached to a forum post.) Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95504</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95504"/>
		<updated>2012-01-26T15:45:49Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to the Linux category, it seems more general than that somehow. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here {http://moodle.org/mod/forum/discuss.php?d=194589]&lt;br /&gt;
Attached to a forum post.) Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Talk:Amazon_EC2_Cloud_Services_Installation&amp;diff=95502</id>
		<title>Talk:Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Talk:Amazon_EC2_Cloud_Services_Installation&amp;diff=95502"/>
		<updated>2012-01-26T15:36:23Z</updated>

		<summary type="html">&lt;p&gt;T100ss: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document followed from a post in Moodle forums the other day ~24th Jan 2008. I did a complete install and have written it up here whilst it was fresh in my mind.&lt;br /&gt;
&lt;br /&gt;
You might choose to add at the beginning how to get the said services.&lt;br /&gt;
Also, this is not necessarily any good for a &amp;quot;live&amp;quot; moodle as the server does not stay &amp;quot;up&amp;quot; all the time and if you do not backup, it will forget stuff.&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95501</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95501"/>
		<updated>2012-01-26T15:34:56Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch and do permissions on moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to that category. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here {http://moodle.org/mod/forum/discuss.php?d=194589]&lt;br /&gt;
Attached to a forum post.) Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html. It takes a while but you get %age feedback.&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Talk:Amazon_EC2_Cloud_Services_Installation&amp;diff=95500</id>
		<title>Talk:Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Talk:Amazon_EC2_Cloud_Services_Installation&amp;diff=95500"/>
		<updated>2012-01-26T15:33:23Z</updated>

		<summary type="html">&lt;p&gt;T100ss: Created page with &amp;quot;This document followed from a post in Moodle forums the other day ~24th Jan 2008. I did a complete install and have written it up here whilst it was fresh in my mind.  You might ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This document followed from a post in Moodle forums the other day ~24th Jan 2008. I did a complete install and have written it up here whilst it was fresh in my mind.&lt;br /&gt;
&lt;br /&gt;
You might choose to add at the beginning how to get the said services.&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
	<entry>
		<id>https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95497</id>
		<title>Amazon EC2 Cloud Services Installation</title>
		<link rel="alternate" type="text/html" href="https://docs.moodle.org/31/en/index.php?title=Amazon_EC2_Cloud_Services_Installation&amp;diff=95497"/>
		<updated>2012-01-26T15:27:45Z</updated>

		<summary type="html">&lt;p&gt;T100ss: /* Fetch and do permissions on moodle */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This is essentially a linux box in the cloud but at the time of writing I did not like to add it to that category. If this install lacks detail or doesn&#039;t work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh &amp;amp; http access to it.&lt;br /&gt;
&lt;br /&gt;
= Install all the requirements =&lt;br /&gt;
From the cli as root or sudo&lt;br /&gt;
&lt;br /&gt;
 yum install httpd&lt;br /&gt;
 yum install mysql-server &lt;br /&gt;
 yum install git&lt;br /&gt;
 yum install php&lt;br /&gt;
 yum install php-gd &lt;br /&gt;
 yum install php-pear&lt;br /&gt;
 yum install php-mbstring&lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-mbstring &lt;br /&gt;
 yum install memcached &lt;br /&gt;
 yum install php-mcrypt &lt;br /&gt;
 yum install php-zts &lt;br /&gt;
 yum install php-xmlrpc &lt;br /&gt;
 yum install php-soap &lt;br /&gt;
 yum install php-intl &lt;br /&gt;
 yum install php-zip &lt;br /&gt;
 yum install php-zts&lt;br /&gt;
 yum install php-xml&lt;br /&gt;
&lt;br /&gt;
= To ensure that mysql and httpd come up on boot. =&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 chkconfig mysqld on &lt;br /&gt;
 chkconfig httpd on&lt;br /&gt;
&lt;br /&gt;
= To ensure that utf8 is used by mysql = &lt;br /&gt;
&lt;br /&gt;
edit /etc/my.cnf to read as follows&lt;br /&gt;
&lt;br /&gt;
 [mysqld]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
 default-collation=utf8_unicode_ci&lt;br /&gt;
 character-set-server=utf8&lt;br /&gt;
 collation-server=utf8_unicode_ci&lt;br /&gt;
 datadir=/var/lib/mysql&lt;br /&gt;
 socket=/var/lib/mysql/mysql.sock&lt;br /&gt;
 user=mysql&lt;br /&gt;
 # Disabling symbolic-links is recommended to prevent assorted security risks&lt;br /&gt;
 symbolic-links=0&lt;br /&gt;
 [mysqld_safe]&lt;br /&gt;
 log-error=/var/log/mysqld.log&lt;br /&gt;
 pid-file=/var/run/mysqld/mysqld.pid&lt;br /&gt;
 [client]&lt;br /&gt;
 default-character-set=utf8&lt;br /&gt;
&lt;br /&gt;
= In order to make sure php is included when httpd comes up =&lt;br /&gt;
&lt;br /&gt;
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;IfModule prefork.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt; &amp;lt;IfModule worker.c&amp;gt;&lt;br /&gt;
 LoadModule php5_module modules/libphp5-zts.so&lt;br /&gt;
 &amp;lt;/IfModule&amp;gt;&lt;br /&gt;
 AddHandler php5-script .php AddType text/html .php&lt;br /&gt;
 DirectoryIndex index.php&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn&#039;t so I have put a copy here {http://moodle.org/mod/forum/discuss.php?d=194589]&lt;br /&gt;
Attached to a forum post.) Perhaps a wiki buff could fix that better.&lt;br /&gt;
&lt;br /&gt;
Once you have got zip.so, put it in /usr/lib/php/modules&lt;br /&gt;
&lt;br /&gt;
Also you need to add&lt;br /&gt;
&lt;br /&gt;
 extension=zip.so&lt;br /&gt;
&lt;br /&gt;
to your php.ini (in /etc)&lt;br /&gt;
&lt;br /&gt;
= Create the database, database user and access rights =&lt;br /&gt;
run&lt;br /&gt;
&lt;br /&gt;
 mysql_secure_installation&lt;br /&gt;
&lt;br /&gt;
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.&lt;br /&gt;
&lt;br /&gt;
run&lt;br /&gt;
  mysql -u root -p&lt;br /&gt;
 &amp;lt;password you set above&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In mysql you need to &lt;br /&gt;
&lt;br /&gt;
1. make a database. The name can be anything you like. I used moodledb&lt;br /&gt;
&lt;br /&gt;
2. make a database user. The name can be anything you like. I used moodledbuser.&lt;br /&gt;
&lt;br /&gt;
3. give that user rights to access the database from the localhost. &lt;br /&gt;
&lt;br /&gt;
4. No db access is required by anyone from any other host than the localhost&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
** Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the &amp;quot;;&amp;quot; after each command.&lt;br /&gt;
&lt;br /&gt;
 create database moodledb;&lt;br /&gt;
 grant all privileges on moodledb.* to moodledbuser@localhost identified by &#039;&amp;lt;put a pw here&amp;gt;&#039;;&lt;br /&gt;
 quit&lt;br /&gt;
&lt;br /&gt;
TEST the above by doing&lt;br /&gt;
&lt;br /&gt;
 mysql -u moodledbuser -p&lt;br /&gt;
 &amp;lt;password&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you get connected OK then you can go on and quit.&lt;br /&gt;
&lt;br /&gt;
= Create moodledata folder =&lt;br /&gt;
 mkdir /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.&lt;br /&gt;
&lt;br /&gt;
 chown apache:apache /var/www/moodledata&lt;br /&gt;
&lt;br /&gt;
= Fetch and do permissions on moodle =&lt;br /&gt;
&lt;br /&gt;
 cd /var/www/html&lt;br /&gt;
 git clone git://git.moodle.org/moodle.git&lt;br /&gt;
&lt;br /&gt;
This should put all of moodle in a file called moodle in the correct folder /var/www/html&lt;br /&gt;
&lt;br /&gt;
There are more sophisticated git commands, see git docs in moodle docs for more info.&lt;br /&gt;
&lt;br /&gt;
 chown -R apache:apache ./moodle&lt;br /&gt;
&lt;br /&gt;
= Do the install =&lt;br /&gt;
&lt;br /&gt;
Visit http://&amp;lt;your amazon host&amp;gt;/moodle&lt;br /&gt;
&lt;br /&gt;
Well, it worked for me!&lt;/div&gt;</summary>
		<author><name>T100ss</name></author>
	</entry>
</feed>