Note: You are currently viewing documentation for Moodle 2.0. Up-to-date documentation for the latest stable version is available here: Step-by-step Install Guide for Solaris 10 with Oracle 10.

Step-by-step Install Guide for Solaris 10 with Oracle 10: Difference between revisions

From MoodleDocs
No edit summary
No edit summary
 
(21 intermediate revisions by 2 users not shown)
Line 1: Line 1:
The '''VDAB''' (Public employment and vocational training service of the Dutch-speaking part of Belgium) is currently preparing an implementation of Moodle 1.9 on a large scale for its clients.
<center>'''Installation Documentation'''</center>


<center>''for''</center>


As a first step we have installed Moodle on a standard environment for VDAB being a '''Solaris 10''' with '''Oracle 10g'''. Since this operation went succefully, problems encountered were solved, the VDAB offers the installation documentation to the Moodle community.
<center>''Moodle at VDAB''</center>




'''Contact person:''' [mailto:gerd.goetschalckx@vdab.be Gerd Goetschalckx]
'''Table of Contents'''1 Purpose of this document1


<div class=Section1>
2 Setting up the Oracle Database2


'''Installation Documentation for Moodle at VDAB'''
3 Configuring Apache2


<div class=Section4>
3.1 Install Apache2


<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
3.2 Install OCI 8 and Oracle Instant Client3


<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
3.3 Install PHP4


<div style='border:none;border-bottom:solid black 1.0pt;padding:0cm 0cm 0cm 0cm'>
3.4 Change PHP settings6


<h1 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>2<span
3.5 Add GNU Coreutils7
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Purpose of this document</span></h1>


</div>
4 Install Moodle7


<p class=MsoBodyText><span lang=EN-US>This document provides an in-depth
4.1 Prepare the Moodle installation files7
installation manual for Moodle on Solaris 10 with Oracle 10.2.0.2.</span></p>


<p class=MsoBodyText><span lang=EN-US>We provide an overview of the different
4.2 Choose installation language8
steps involved:</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.3 Check PHP settings8
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Preparing
Oracle 10g for a large Moodle installation</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.4 Set installation and data directories10
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Configuring
Apache 2.2 for a secure and high-performance webserver</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.5 Set Database connection11
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Preparing
all necessary PHP packages for Apache and Oracle</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.6 Server checks for installed components12
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Preparing
PHP settings for Moodle</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.7 Install language packs19
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>An
overview of the steps in the Moodle installation wizard.</span></p>


<div style='border:none;border-bottom:solid black 1.0pt;padding:0cm 0cm 0cm 0cm'>
4.8 Confirmation for written configuration file.21


<h1 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>3<span
4.9 Licence agreement21
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Setting up the Oracle Database</span></h1>


</div>
4.10 Release information21


<p class=MsoBodyText><span lang=EN-US>We set up <b>2 parallel Moodle
4.11 Automatic database setup22
installations </b>on one and a <b>database on a separate server</b>. Both
installations share the same Oracle database, but use a different tablespace.</span></p>


<p class=MsoBodyText><span lang=EN-US>The Oracle 10.2.0.2 database runs on a
4.12 Setting up the administrator account23
Solaris 10 and is set up using Oracle's <b>DBCA </b>tool. </span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.13 Set up Frontpage24
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
lang=EN-US>This is </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>testzone1</span></span><span lang=EN-US> on the test
server </span><span class=SourceText><span lang=EN-US style='font-size:10.5pt'>testitis00</span></span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.14 Start with empty Moodle25
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
lang=EN-US>Database name = </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>testitis02.vdab.be</span></span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
4.15 Add template Purpose of this document
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
This document provides an in-depth installation manual for Moodle on Solaris 10 with Oracle 10.2.0.2.
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>We
used the <i>General purpose</i> template for the database set-up;</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
We provide an overview of the different steps involved:
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
lang=EN-US>And set UTF8 character encoding to </span><span class=SourceText><span
lang=EN-US style='font-size:10.5pt'>NLS_LANG=AMERICAN_AMERICA.AL32UTF8</span></span></p>


<p class=MsoBodyText><span lang=EN-US>For each Moodle installation we create a <b>separate
* Preparing Oracle 10g for a large Moodle installation
Tablespace</b>:</span></p>
* Configuring Apache 2.2 for a secure and high-performance webserver
* Preparing all necessary PHP packages for Apache and Oracle
* Preparing PHP settings for Moodle
* An overview of the steps in the Moodle installation wizard.


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
= Setting up the Oracle Database =
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
We set up '''2 parallel Moodle installations '''on one and a '''database on a separate server'''. Both installations share the same Oracle database, but use a different tablespace.
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>First
Moodle installation on </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>testzone2</span></span><span lang=EN-US>:</span></p>


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
The Oracle 10.2.0.2 database runs on a Solaris 10 and is set up using Oracle's '''DBCA '''tool.  
lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>MOODLE_DATA</span></span><span
lang=EN-US> with initial size of 300MB</span></p>


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
* This is testzone1 on the test server testitis00
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
* Database name = testitis02.vdab.be
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
* We used the ''General purpose'' template for the database set-up;
lang=EN-US>User: </span><span class=SourceText><span lang=EN-US
* And set UTF8 character encoding to NLS_LANG=AMERICAN_AMERICA.AL32UTF8
style='font-size:10.5pt'>MOODLEUSER</span></span><span lang=EN-US>, password: </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>moodle</span></span></p>


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
For each Moodle installation we create a '''separate Tablespace''':
lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>The
user only has rights within the specified tablespace</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
* First Moodle installation on testzone2:
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
** MOODLE_DATA with initial size of 300MB
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Second
** User: MOODLEUSER, password: moodle
Moodle installation on </span><span class=SourceText><span lang=EN-US
** The user only has rights within the specified tablespace
style='font-size:10.5pt'>testzone3</span></span><span lang=EN-US>:</span></p>
* Second Moodle installation on testzone3:
** MOODLE_DATA2 with initial size of 300MB
** User: MOODLEUSER2, password: moodle
** The user only has rights within the specified tablespace


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
= Configuring Apache =
lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
== Install Apache ==
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span
First '''download the latest Apache '''e.g. httpd-2.2.8.tar.gz from [http://httpd.apache.org/download.cgi http://httpd.apache.org/download.cgi] to the folder /usr/local/apache2
class=SourceText><span lang=EN-US style='font-size:10.5pt'>MOODLE_DATA2</span></span><span
lang=EN-US> with initial size of 300MB</span></p>


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
Log in as root, '''uncompress the Apache files '''and go to the installation folder.
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
lang=EN-US>User: </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>MOODLEUSER2</span></span><span lang=EN-US>, password: </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>moodle</span></span></p>


<p class=MsoBodyText style='margin-left:54.0pt;text-indent:-18.0pt'><span
<nowiki># gzip -d httpd-2.2.8.tar.gz</nowiki>
lang=EN-US style='font-size:9.0pt;font-family:"Wingdings 2"'><span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>The
user only has rights within the specified tablespace</span></p>


<p class=MsoNormal><span lang=EN-US>   </span></p>
<nowiki># tar -xvf httpd-2.2.8.tar</nowiki>


<div style='border:none;border-bottom:solid black 1.0pt;padding:0cm 0cm 0cm 0cm'>
<nowiki># cd httpd-2.2.8</nowiki>


<h1 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4<span
Adapt the '''Environment Variables '''to make sure the correct gcc and make are used.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Configuring Apache</span></h1>


</div>
<nowiki># export PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin:.</nowiki>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4.1<span
'''Configure and make Apache''':
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Install Apache</span></h2>


<p class=MsoBodyText><span lang=EN-US>First <b>download the latest Apache </b>e.g.</span><span
<nowiki># make clean --> only if necessary</nowiki>
class=SourceText><span lang=EN-US style='font-size:10.5pt'> httpd-2.2.8.tar.gz </span></span><span
lang=EN-US>from <a href="http://httpd.apache.org/download.cgi">http://httpd.apache.org/download.cgi</a>
to the folder </span><span class=SourceText><span lang=EN-US style='font-size:
10.5pt'>/usr/local/apache2</span></span></p>


<p class=MsoBodyText><span lang=EN-US>Log in as </span><span class=SourceText><span
<nowiki># ./configure \</nowiki>
lang=EN-US style='font-size:10.5pt'>root</span></span><span lang=EN-US>, <b>uncompress
the Apache files </b>and go to the installation folder.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
--prefix=/usr/local/apache2 \
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--with-included-apr
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># gzip -d
httpd-2.2.8.tar.gz</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># make</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># tar -xvf httpd-2.2.8.tar</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># make install</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># cd httpd-2.2.8</span></p>


</div>
In order to increase performance '''edit''' the following in the httpd.conf file:


<p class=MsoBodyText><span lang=EN-US>Adapt the <b>Environment Variables </b>to
<nowiki># vi /usr/local/moodle_1.9+/moodle/httpd.conf -- > opens text editor</nowiki>
make sure the correct </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>gcc </span></span><span lang=EN-US>and </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>make</span></span><span
lang=EN-US> are used.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
'''DirectoryIndex '''index.php
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
'''Listen''' 8002 -- > for VDAB
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># export
PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin:.</span></p>


</div>
'''DocumentRoot''' “/usr/local/moodle_1.9+/moodle”


<p class=MsoBodyText><span class=SourceText><b><span lang=EN-US
'''AcceptPathInfo '''on
style='font-size:10.5pt'>Configure </span></b></span><b><span lang=EN-US>and</span></b><span
class=SourceText><b><span lang=EN-US style='font-size:10.5pt'> make</span></b></span><b><span
lang=EN-US> Apache</span></b><span lang=EN-US>:</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
If you're running Moodle on Oracle with Apache on Linux, you might have issues with PHP being able to see the system environment variables.  To resolve this, you can edit /etc/sysconfig/apache2 and add the following lines to the bottom:<br />
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>
<br />
LD_LIBRARY_PATH=/opt/oracle/instantclient_11_2# Set LANG Variables for UTF-8<br />
NLS_LANG=AMERICAN_AMERICA.AL32UTF8<br />
LANG=en_US.UTF-8<br />
LC_ALL=en_US.UTF-8<br />
LC_COLLATE=en_US.UTF-8<br />
LC_CTYPE=en_US.UTF-8<br />
LC_MESSAGES=en_US.UTF-8<br />
LC_MONETARY=en_US.UTF-8<br />
LC_NUMERIC=en_US.UTF-8<br />
LC_TIME=en_US.UTF-8<br />
export LANG LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIM NLS_LANG LD_LIBRARY_PATH<br />
<br />
Also need to add those two lines to ~/.bashrc so that the PHP command-line client can see it too. <br />
<br />


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make clean --&gt; only
if necessary</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
== Install OCI 8 and Oracle Instant Client ==
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># ./configure \</span></p>
'''Download the 32bit Solaris Basic en SDK''': instantclient-basic-solaris6432-10.2.0.3-20070101.zip and


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
instantclient-sdk-solaris6432-10.2.0.3-20070101.zip from
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--prefix=/usr/local/apache2
\</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
[http://www.oracle.com/technology/tech/oci/instantclient/index.html http://www.oracle.com/technology/tech/oci/instantclient/index.html] to a folder e.g. /oracle/product.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-included-apr</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
Log in as the user oracle and '''uncompress the installation files''':
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make install</span></p>


</div>
$ cd /oracle/product


<p class=MsoBodyText><span lang=EN-US>In order to increase performance <b>edit</b>
$ unzip instantclient-basic-solaris6432-10.2.0.3-20070101.zip --> creates the directory instantclient_10_2
the following in the </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>httpd.conf</span></span><span lang=EN-US> file:</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
$ unzip instantclient-sdk-solaris6432-10.2.0.3-20070101.zip --> is put into the directory instantclient_10_2
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># vi
/usr/local/moodle_1.9+/moodle/httpd.conf -- &gt; opens text editor</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
'''Adapt the tnsnames '''to set an alias or Oracle net service name. Each net service name entry contains connect descriptors that define listener and service information.
margin-left:0cm;background:#FFFFCC'><b><span lang=EN-GB>DirectoryIndex </span></b><span
lang=EN-GB>index.php</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ cd $TNS_ADMIN --> for VDAB this is /var/opt/oracle)
margin-left:0cm;background:#FFFFCC'><b><span lang=EN-GB>Listen</span></b><span
lang=EN-GB> 8002 -- &gt; for VDAB</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ vi tns_admin _--> Below an example adaptation:_
margin-left:0cm;background:#FFFFCC'><b><span lang=EN-GB>DocumentRoot</span></b><span
lang=EN-GB> “/usr/local/moodle_1.9+/moodle”</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
moodle =
margin-left:0cm;background:#FFFFCC'><b><span lang=EN-GB>AcceptPathInfo </span></b><span
lang=EN-GB>on</span></p>


</div>
(DESCRIPTION =


<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
(ADDRESS =


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4.2<span
(COMMUNITY = TCPDEV.world)
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Install OCI 8 and Oracle Instant Client</span></h2>


<p class=MsoNormal><b><span lang=EN-US>Download the 32bit Solaris Basic en SDK</span></b><span
(PROTOCOL = TCP)
lang=EN-US>: </span><span class=SourceText><span lang=EN-US style='font-size:
10.5pt'>instantclient-basic-solaris6432-10.2.0.3-20070101.zip</span></span><span
lang=EN-US> and </span></p>


<p class=MsoNormal><span class=SourceText><span lang=EN-US style='font-size:
(HOST = testzone1)
10.5pt'>instantclient-sdk-solaris6432-10.2.0.3-20070101.zip</span></span><span
lang=EN-US> from </span></p>


<p class=MsoNormal><span lang=EN-US><a
(PORT = 1521)
href="http://www.oracle.com/technology/tech/oci/instantclient/index.html">http://www.oracle.com/technology/tech/oci/instantclient/index.html</a>
to a folder e.g. </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>/oracle/product</span></span><span lang=EN-US>.</span></p>


<p class=MsoNormal><span lang=EN-US>&nbsp;</span></p>
)


<p class=MsoNormal><span lang=EN-US>Log in as the user </span><span
(CONNECT_DATA =  
class=SourceText><span lang=EN-US style='font-size:10.5pt'>oracle</span></span><span
lang=EN-US> and <b>uncompress the installation files</b>:</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
(SID = testitis02)
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
)
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ cd /oracle/product</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
)
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ unzip
instantclient-basic-solaris6432-10.2.0.3-20070101.zip --&gt; creates the
directory instantclient_10_2</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ unzip
instantclient-sdk-solaris6432-10.2.0.3-20070101.zip --&gt; is put into the
directory instantclient_10_2</span></p>


</div>
If necessary, create and adapt a sqlnet.ora file. For VDAB this was not necessary.


<p class=MsoNormal><span lang=EN-US>&nbsp;</span></p>


<p class=MsoNormal><b><span lang=EN-US>Adapt the </span></b><span
Create two '''Symbolic Links'''.
class=SourceText><b><span lang=EN-US style='font-size:10.5pt'>tnsnames</span></b></span><b><span
lang=EN-US> </span></b><span lang=EN-US>to set an alias or Oracle net service
name. Each net service name entry contains connect descriptors that define
listener and service information.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
$ ln -s /oracle/product/instantclient_10_2/libclntsh.so.10.1
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
/oracle/product/instantclient_10_2/libclntsh.so
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ cd $TNS_ADMIN --&gt; for
VDAB this is /var/opt/oracle)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ ln -s /oracle/product/instantclient_10_2/libocci.so.10.1
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ vi tns_admin _--&gt;
Below an example adaptation:_</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
/oracle/product/instantclient_10_2/libocci.so
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB> moodle =</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
== Install PHP ==
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>       (DESCRIPTION =</span></p>
To '''install PHP '''on the Apache server, download php-5.2.5.tar.gz from [http://www.php.net/downloads http://www.php.net/downloads] to the folder /usr/local/apache2


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
Log in as root, '''uncompress the PHP files '''and go to the installation folder.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>             (ADDRESS =</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># gzip -d php-5.2.5.tar.gz</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>                   (COMMUNITY
= TCPDEV.world)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># tar -xvf php-5.2.5.tar</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>                   (PROTOCOL
= TCP)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># cd php-5.2.5</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>                   (HOST =
testzone1)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
Adapt the '''Environment Variables '''to make sure the correct gcc and make are used.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>                   (PORT =
1521)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># export PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>             )</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># export LD_LIBRARY_PATH=/oracle/product/instantclient_10_2</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>             (CONNECT_DATA
= </span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
The following table provides a brief overview of the PHP extensions and what they are used for. All of these are required to do a fully functional Moodle installation.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>                   (SID =
testitis02)</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>             )</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>       )</span></p>


</div>
{| class="prettytable"
! <center>PHP Extensions</center>
! <center>Description</center>


<p class=MsoNormal><span lang=EN-US>&nbsp;</span></p>
|-
| GD


<p class=MsoNormal><span lang=EN-US style='background:white'>If necessary,
Freetype 2
create and adapt a </span><span class=SourceText><span lang=EN-US
| GD is commonly used to generate charts, graphics, thumbnails, etc. on the fly.  
style='font-size:10.5pt;background:white'>sqlnet.ora</span></span><span
lang=EN-US style='background:white'> file. For VDAB this was not necessary.</span></p>


<p class=MsoNormal><span lang=EN-US>&nbsp;</span></p>
Freetype provides an API to manipulate fonts.


<p class=MsoNormal><span lang=EN-US>Create two <b>Symbolic Links</b>.</span></p>
Moodle uses these modules to generate dynamic graphs from the logs.


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
|-
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>
| OCI8
| Required connector for Oracle


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ ln -s
| zlib (alternatively use zip or unzip)
/oracle/product/instantclient_10_2/libclntsh.so.10.1</span></p>
| Zlib is required for zip/unzip funcitonality based on the deflate compression method.  


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
Moodle itself can also handle this functionality, but this impacts the use of server resources.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>/oracle/product/instantclient_10_2/libclntsh.so</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ ln -s
| curl
/oracle/product/instantclient_10_2/libocci.so.10.1</span></p>
| curl is a client to get files from servers. It is used for handling files using a wide variety of protocols.


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
This is a requirement for Moodle 1.8 and later
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>/oracle/product/instantclient_10_2/libocci.so</span></p>


</div>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4.3<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Install PHP</span></h2>


<p class=MsoBodyText><span lang=EN-US>To <b>install PHP </b>on the Apache
server, download </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>php-5.2.5.tar.gz</span></span><span lang=EN-US> from <a
href="http://www.php.net/downloads">http://www.php.net/downloads</a> to the
folder </span><span class=SourceText><span lang=EN-US style='font-size:10.5pt'>/usr/local/apache2</span></span></p>


<p class=MsoBodyText><span lang=EN-US>Log in as </span><span class=SourceText><span
|-
lang=EN-US style='font-size:10.5pt'>root</span></span><span lang=EN-US>, <b>uncompress
| openssl
the PHP files </b>and go to the installation folder.</span></p>
| Library to enable secured connections to a server. This is mainly used for connections between Moodle installations e.g. to share courses.


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
|-
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>
| php5-LDAP
| Enables the use of LDAP functions in PHP


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># gzip -d php-5.2.5.tar.gz</span></p>
| aspell-xx
| The optional aspell modules provide a free spelling checker functionality embedded in Moodle. This module support a very large number of languages. XX represents the 2-letter code for the language.


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|}
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># tar -xvf php-5.2.5.tar</span></p>
For a default Solaris most of these modules are available by default. We only need to install curl and enable these modules in the Apache-Php configuration.


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
We first install curl. Download the package curl-7.18.1.tar.gz from [http://curl.haxx.se/ http://curl.haxx.se] to /usr/local/apache2.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># cd php-5.2.5</span></p>


</div>
Log in as root, '''uncompress the curl files '''and go to the installation folder to '''make''' and '''install'''.


<p class=MsoBodyText><span lang=EN-US>Adapt the <b>Environment Variables </b>to
<nowiki># gunzip curl-7.18.1.tar.gz</nowiki>
make sure the correct </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>gcc </span></span><span lang=EN-US>and </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>make</span></span><span
lang=EN-US> are used.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
<nowiki># tar -xvf curl-7.18.1.tar</nowiki>
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># cd curl-7.18.1</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># export
PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># ./configure</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># export
LD_LIBRARY_PATH=/oracle/product/instantclient_10_2</span></p>


</div>
<nowiki># make</nowiki>


<p class=MsoBodyText><span lang=EN-US>The following table provides a brief
<nowiki># make install</nowiki>
overview of the PHP extensions and what they are used for. All of these are
required to do a fully functional Moodle installation.</span></p>


<p class=MsoBodyText><span lang=EN-US style='background:yellow'>&nbsp;</span></p>
In order to '''test''' the curl installation do


<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0
/usr/local/bin/curl -V
style='margin-left:2.75pt;border-collapse:collapse'>
<thead>
  <tr>
  <td width=203 valign=top style='width:121.55pt;border:solid black 1.0pt;
  border-right:none;background:black;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents align=center style='text-align:center;layout-grid-mode:
  char'><b><span lang=EN-GB>PHP Extensions</span></b></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  background:black;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents align=center style='text-align:center;layout-grid-mode:
  char'><b><span lang=EN-GB>Description</span></b></p>
  </td>
  </tr>
</thead>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>GD</span></p>
  <p class=TableContents><span lang=EN-GB>Freetype 2</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>GD is
  commonly used to generate charts, graphics, thumbnails, etc. on the fly. </span></p>
  <p class=TableContents><span lang=EN-GB>Freetype provides an API to
  manipulate fonts.  </span></p>
  <p class=TableContents><span lang=EN-GB>Moodle uses these modules to generate
  dynamic graphs from the logs.</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>OCI8</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>Required
  connector for Oracle</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>zlib
  (alternatively use zip or unzip)</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>Zlib is
  required for zip/unzip funcitonality based on the deflate compression method.
  </span></p>
  <p class=TableContents><span lang=EN-GB>Moodle itself can also handle this
  functionality, but this impacts the use of server resources.</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>curl</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>curl is
  a client to get files from servers. It is used for handling files using a
  wide variety of protocols.</span></p>
  <p class=TableContents><span lang=EN-GB>This is a requirement for Moodle 1.8
  and later</span></p>
  <p class=TableContents><span lang=EN-GB>&nbsp;</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>openssl</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>Library
  to enable secured connections to a server. This is mainly used for
  connections between Moodle installations e.g. to share courses.</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>php5-LDAP</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>Enables
  the use of LDAP functions in PHP</span></p>
  </td>
</tr>
<tr>
  <td width=203 valign=top style='width:121.55pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>aspell-xx</span></p>
  </td>
  <td width=628 valign=top style='width:377.05pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>The
  optional aspell modules provide a free spelling checker functionality
  embedded in Moodle. This module support a very large number of languages. XX
  represents the 2-letter code for the language.</span></p>
  </td>
</tr>
</table>


<p class=MsoNormal><span lang=EN-US>&nbsp;</span></p>
If necessary, extend PATH to /usr/local/bin. This was not necessary for VDAB.


<p class=MsoBodyText><span lang=EN-US>For a default Solaris most of these
Next, we will configure, and '''install the PHP for Apache make links to the PHP extensions'''.
modules are available by default. We only need to install </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>curl</span></span><span
lang=EN-US> and enable these modules in the Apache-Php configuration.</span></p>


<p class=MsoBodyText><span lang=EN-US>We first install </span><span
<nowiki># cd /usr/local/apache2/php-5.2.5</nowiki>
class=SourceText><span lang=EN-US style='font-size:10.5pt'>curl</span></span><span
lang=EN-US>. Download the package </span><span class=SourceText><span
lang=EN-US style='font-size:10.5pt'>curl-7.18.1.tar.gz</span></span><span
lang=EN-US> from <a href="http://curl.haxx.se/">http://curl.haxx.se</a> to </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>/usr/local/apache2</span></span><span
lang=EN-US>.</span></p>


<p class=MsoBodyText><span lang=EN-US>Log in as </span><span class=SourceText><span
<nowiki># ./configure \</nowiki>
lang=EN-US style='font-size:10.5pt'>root</span></span><span lang=EN-US>, <b>uncompress
the </b></span><span class=SourceText><b><span lang=EN-US style='font-size:
10.5pt'>curl</span></b></span><b><span lang=EN-US> files </span></b><span
lang=EN-US>and go to the installation folder to </span><span class=SourceText><b><span
lang=EN-US style='font-size:10.5pt'>make</span></b></span><span lang=EN-US> and
</span><span class=SourceText><b><span lang=EN-US style='font-size:10.5pt'>install</span></b></span><span
lang=EN-US>.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
--with-apxs2=/usr/local/apache2/bin/apxs \
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--with-config-file-path=/usr/local/apache2/conf \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># gunzip
curl-7.18.1.tar.gz</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--with-oci8=instantclient,/oracle/product/instantclient_10_2 \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># tar -xvf curl-7.18.1.tar</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--enable-sigchild \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># cd curl-7.18.1</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--enable-mbstring \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># ./configure</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--with-gd \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
--with-openssl \
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make install</span></p>


</div>
--with-curl=/usr/local/apache2/curl-7.18.1


<p class=MsoBodyText><span lang=EN-US>In order to <b>test</b> the </span><span
--with-ldap=/usr/local
class=SourceText><span lang=EN-US style='font-size:10.5pt'>curl</span></span><span
lang=EN-US> installation do</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
<nowiki># make</nowiki>
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># make install</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>/usr/local/bin/curl -V</span></p>


</div>


<p class=MsoBodyText><span lang=EN-US style='background:white'>If necessary,
== Change PHP settings ==
extend PATH to </span><span class=SourceText><span lang=EN-US style='font-size:
By default there is no php.ini file. However, there is a php.ini-recommended which we will use to make the required adaptations listed in the table below. Afterwards we will make a copy of this file and make it the active Php configuration file.
10.5pt;background:white'>/usr/local/bin</span></span><span lang=EN-US
style='background:white'>. This was not necessary for VDAB.</span></p>


<p class=MsoBodyText><span lang=EN-US>Next, we will </span><span
<nowiki># vi /usr/local/apache2/conf/php.ini-recommended --> Open text editor and make adaptations</nowiki>
class=SourceText><span lang=EN-US style='font-size:10.5pt'>configure</span></span><span
lang=EN-US>, and </span><span class=SourceText><b><span lang=EN-US
style='font-size:10.5pt'>install</span></b></span><b><span lang=EN-US> the PHP
for Apache make links to the PHP extensions</span></b><span lang=EN-US>.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
<nowiki># cp /usr/local/apache2/php-5.2.5/php.ini-recommended /usr/local/apache2/conf/php.ini</nowiki>
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
'''In the file edit the following settings:'''
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># cd
/usr/local/apache2/php-5.2.5</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># ./configure \</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
{| class="prettytable"
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-apxs2=/usr/local/apache2/bin/apxs
! <center>Setting</center>
\</span></p>
! <center>Value we used in php.ini</center>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-config-file-path=/usr/local/apache2/conf
| Safe mode must be off
\</span></p>
| <nowiki>; Safe mode</nowiki>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
safe_mode = Off
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-oci8=instantclient,/oracle/product/instantclient_10_2
\</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--enable-sigchild \</span></p>
| memory_limit is at least 128MB
| <nowiki>; Resource Limits</nowiki>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
memory_limit = 128M <nowiki>; Maximum amount of memory a script may consume</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--enable-mbstring \</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-gd \</span></p>
| session.save_handler needs to be set to FILES.
| <nowiki>[Session]</nowiki>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki>; Handler used to store/retrieve data.</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-openssl \</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
session.save_handler = files
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>--with-curl=/usr/local/apache2/curl-7.18.1</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make</span></p>
| magic_quotes_gpc needs to be ON


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
magic_quotes_runtime needs to be OFF
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># make install</span></p>
| <nowiki>; Magic quotes for incoming GET/POST/Cookie data.</nowiki>


</div>
magic_quotes_gpc = On


<p class=MsoBodyText><span lang=EN-US style='background:yellow'>&nbsp;</span></p>
<nowiki>; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.</nowiki>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4.4<span
magic_quotes_runtime = Off
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Change PHP settings</span></h2>


<p class=MsoBodyText><span lang=EN-US>By default there is no </span><span
|-
class=SourceText><span lang=EN-US style='font-size:10.5pt'>php.ini</span></span><span
| file_uploads needs to be ON
lang=EN-US> file. However, there is a </span><span class=SourceText><span
| <nowiki>; Whether to allow HTTP file uploads.</nowiki>
lang=EN-US style='font-size:10.5pt'>php.ini-recommended</span></span><span
lang=EN-US> which we will use to make the required adaptations listed in the
table below. Afterwards we will make a copy of this file and make it the active
Php configuration file.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
file_uploads = On
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
|-
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># vi
| session.auto_start needs to be OFF
/usr/local/apache2/conf/php.ini-recommended --&gt; Open text editor and make
| <nowiki>; Initialize session on request startup.</nowiki>
adaptations</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
session.auto_start = 0
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># cp
/usr/local/apache2/php-5.2.5/php.ini-recommended
/usr/local/apache2/conf/php.ini</span></p>


</div>
|-
| session.bug_compat_warn needs to be OFF
| session.bug_compat_warn = 0


<p class=MsoBodyText><b><span lang=EN-US>In the file edit the following
|-
settings:</span></b></p>
| post_max_size is too small by default and needs to be increased e.g. when you run into problems while creating online content
| <nowiki>; Maximum size of POST data that PHP will accept.</nowiki>


<table class=MsoNormalTable border=0 cellspacing=0 cellpadding=0
post_max_size = 300M
style='margin-left:2.75pt;border-collapse:collapse'>
<thead>
  <tr>
  <td width=401 valign=top style='width:240.4pt;border:solid black 1.0pt;
  border-right:none;background:black;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents align=center style='text-align:center;layout-grid-mode:
  char'><b><span lang=EN-GB>Setting</span></b></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  background:black;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents align=center style='text-align:center;layout-grid-mode:
  char'><b><span lang=EN-GB>Value we used in php.ini</span></b></p>
  </td>
  </tr>
</thead>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>Safe
  mode must be off</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>; Safe
  mode</span></p>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>safe_mode
  = Off</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>memory_limit
  is at least 128MB</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>;
  Resource Limits</span></p>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>memory_limit
  = 128M      ; Maximum amount of memory a script may consume</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>session.save_handler
  needs to be set to FILES.</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>[Session]</span></p>
  <p class=TableContents><span lang=EN-GB>; Handler used to store/retrieve
  data.</span></p>
  <p class=TableContents><span lang=EN-GB>session.save_handler = files</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>magic_quotes_gpc
  needs to be ON</span></p>
  <p class=TableContents><span lang=EN-GB>magic_quotes_runtime needs to be OFF</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>; Magic
  quotes for incoming GET/POST/Cookie data.</span></p>
  <p class=TableContents><span lang=EN-GB>magic_quotes_gpc = On</span></p>
  <p class=TableContents><span lang=EN-GB>; Magic quotes for runtime-generated
  data, e.g. data from SQL, from exec(), etc.</span></p>
  <p class=TableContents><span lang=EN-GB>magic_quotes_runtime = Off</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>file_uploads
  needs to be ON</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>;
  Whether to allow HTTP file uploads.</span></p>
  <p class=TableContents><span lang=EN-GB>file_uploads = On</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>session.auto_start
  needs to be OFF</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>;
  Initialize session on request startup.</span></p>
  <p class=TableContents><span lang=EN-GB>session.auto_start = 0</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>session.bug_compat_warn
  needs to be OFF</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>session.bug_compat_warn
  = 0</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>post_max_size
  is too small by default and needs to be increased e.g. when you run into
  problems while creating online content</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>;
  Maximum size of POST data that PHP will accept.</span></p>
  <p class=TableContents><span lang=EN-GB>post_max_size = 300M</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>upload_max_filesize
  needs to be increased e.g. to allow uploading larger course packages</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>;
  Maximum allowed size for uploaded files.</span></p>
  <p class=TableContents><span lang=EN-GB>upload_max_filesize = 300M</span></p>
  </td>
</tr>
<tr>
  <td width=401 valign=top style='width:240.4pt;border-top:none;border-left:
  solid black 1.0pt;border-bottom:solid black 1.0pt;border-right:none;
  padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>magic_quotes_sybase
  should be on for Oracle installations.</span></p>
  </td>
  <td width=403 valign=top style='width:241.85pt;border:solid black 1.0pt;
  border-top:none;padding:2.75pt 2.75pt 2.75pt 2.75pt'>
  <p class=TableContents style='layout-grid-mode:char'><span lang=EN-GB>magic_quotes_sybase
  = On</span></p>
  </td>
</tr>
</table>


<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
|-
| upload_max_filesize needs to be increased e.g. to allow uploading larger course packages
| <nowiki>; Maximum allowed size for uploaded files.</nowiki>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>4.5<span
upload_max_filesize = 300M
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Add GNU Coreutils</span></h2>


<p class=MsoBodyText><span lang=EN-US>Also install the GNU Coreutils for
|-
Solaris in order to avoid Apache error described in case MDL-6850 . The
| magic_quotes_sybase should be on for Oracle installations.
Coreutils will include the du command which is required by Moodle to collect
| magic_quotes_sybase = On
and calculate data on file sizes. </span></p>


<p class=MsoBodyText><b><span lang=EN-US>Download </span></b><span
|}
class=Teletype><span lang=EN-US style='font-size:10.0pt'>coreutils-6.4-sol10-sparc-local.gz</span></span><span
== Add GNU Coreutils ==
lang=EN-US> from <a
Also install the GNU Coreutils for Solaris in order to avoid Apache error described in case MDL-6850 . The Coreutils will include the du command which is required by Moodle to collect and calculate data on file sizes.  
href="http://www.sunfreeware.com/solaris_2.5_list.html#coreutils">http://www.sunfreeware.com/solaris_2.5_list.html#coreutils</a>
to your global zone as </span><span class=Teletype><span lang=EN-US
style='font-size:10.0pt'>root</span></span><span lang=EN-US> .</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
'''Download '''coreutils-6.4-sol10-sparc-local.gz from [http://www.sunfreeware.com/solaris_2.5_list.html#coreutils http://www.sunfreeware.com/solaris_2.5_list.html#coreutils] to your global zone as root .
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
gunzip coreutils-6.4-sol10-sparc-local.gz
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>gunzip
coreutils-6.4-sol10-sparc-local.gz</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
pkgadd -d coreutils-6.4-sol10-sparc-local.gz
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>pkgadd -d
coreutils-6.4-sol10-sparc-local.gz</span></p>


</div>
Go to Administration > Configuration > Variables > Operating System and enter the path to entry pathtodu to the GNU du in /usr/local/bin/du (was /usr/bin/du) .


<p class=MsoBodyText><span lang=EN-US>Go to </span><span class=Teletype><span
Set the correct path in the Moodle administration interface. Go to Administration > Server > System Paths and fill out the correct path in the Path to du entry.
lang=EN-US style='font-size:10.0pt'>Administration &gt; Configuration &gt;
Variables &gt; Operating System</span></span><span lang=EN-US> and enter the
path to entry </span><span class=Teletype><span lang=EN-US style='font-size:
10.0pt'>pathtodu </span></span><span lang=EN-US>to the GNU du in
/usr/local/bin/du (was /usr/bin/du) .</span></p>


<p class=MsoBodyText><span lang=EN-US>Set the correct path in the Moodle
= Install Moodle =
administration interface. Go to </span><span class=Teletype><span lang=EN-US
== Prepare the Moodle installation files ==
style='font-size:10.0pt'>Administration &gt; Server &gt; System Paths </span></span><span
Now that we have completed the set-up for Apache, PHP, Oracle and the connection between PHP and Oracle we prepare for the Moodle installation.
lang=EN-US>and fill out the correct path in the </span><span class=Teletype><span
lang=EN-US style='font-size:10.0pt'>Path to du</span></span><span lang=EN-US>
entry.</span></p>


<div style='border:none;border-bottom:solid black 1.0pt;padding:0cm 0cm 0cm 0cm'>
Log in as root and '''create a moodle user''' assigned to a group and set a password.


<h1 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5<span
<nowiki># mkdir /export/home/moodle</nowiki>
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Install Moodle</span></h1>


</div>
<nowiki># useradd -u 1005 -g 101 -d /export/home/moodle -s /bin/bash -c "Moodle" -m moodle</nowiki>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.1<span
<nowiki># chown moodle:users /export/home/moodle</nowiki>
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Prepare the Moodle installation files</span></h2>


<p class=MsoBodyText><span lang=EN-US>Now that we have completed the set-up for
<nowiki># passwd moodle</nowiki>
Apache, PHP, Oracle and the connection between PHP and Oracle we prepare for
the Moodle installation.</span></p>


<p class=MsoBodyText><span lang=EN-US>Log in as </span><span class=SourceText><span
Log in as root to '''create a directory for the Moodle installation''':
lang=EN-US style='font-size:10.5pt'>root</span></span><span lang=EN-US> and <b>create
a </b></span><span class=SourceText><b><span lang=EN-US style='font-size:10.5pt'>moodle</span></b></span><b><span
lang=EN-US> user</span></b><span lang=EN-US> assigned to a group and set a password.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
<nowiki># mkdir /usr/local/moodle_1.9+</nowiki>
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># chown moodle:users /usr/local/moodle_1.9+</nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># mkdir
/export/home/moodle</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
'''Download '''moodle-weekly-19.tgz from [http://download.moodle.org/ http://download.moodle.org/]. Log in as the user moodle and copy the file to /usr/local/moodle_1.9+ and uncompress the file:
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># useradd -u 1005 -g 101
-d /export/home/moodle -s /bin/bash -c &quot;Moodle&quot; -m moodle</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ gunzip moodle-weekly-19.tgz
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># chown moodle:users
/export/home/moodle</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ tar -vxf moodle-weekly-19.tar --> creates subdirectory 'moodle'
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># passwd moodle</span></p>


</div>
Now log onto the system where you will install Moodle e.g. testzone3 on server testitis03 as the user moodle.


<p class=MsoBodyText><span lang=EN-US>Log in as </span><span class=SourceText><span
Set the '''environment variables''', preferable in the .profile of the de user moodle:  
lang=EN-US style='font-size:10.5pt'>root</span></span><span lang=EN-US> to <b>create
a directory for the Moodle installation</b>:</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
$ export ORACLE_HOME=/oracle/product/instantclient_10_2
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ export LD_LIBRARY_PATH=$ORACLE_HOME
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># mkdir /usr/local/moodle_1.9+</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
$ export TNS_ADMIN=/var/opt/oracle
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># chown moodle:users
/usr/local/moodle_1.9+</span></p>


</div>
$ export PATH=$PATH:/usr/local/bin:/local/bin:.


<p class=MsoBodyText><b><span lang=EN-US>Download </span></b><span lang=EN-US>moodle-weekly-19.tgz
'''Start Apache '''with the configuration file adapted to moodle:  
from <a href="http://download.moodle.org/">http://download.moodle.org/</a>. Log
in as the user moodle and copy the file to </span><span class=SourceText><span
lang=EN-US style='font-size:10.5pt'>/usr/local/moodle_1.9+</span></span><span
lang=EN-US> and uncompress the file:</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
$ /usr/local/apache2/bin/apachectl -k start -f /usr/local/moodle_1.9+/moodle/httpd.conf
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
If desired you can install other languages during the installation wizard by downloading the appropriate language files e.g. Dutch ([http://download.moodle.org/lang16/nl_utf8.zip http://download.moodle.org/lang16/nl_utf8.zip]) to /usr/local/moodle_1.9+/moodledata/lang and uncompress the file.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ gunzip
moodle-weekly-19.tgz</span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
<nowiki># unzip nl_utf8.zip </nowiki>
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ tar -vxf
moodle-weekly-19.tar --&gt; creates subdirectory 'moodle'</span></p>


</div>
A list of additional languages is available from the administration interface. Moodle then automatically downloads and installs the selected languages.


<p class=MsoBodyText><span lang=EN-US>Now log onto the system where you will
== Choose installation language ==
install Moodle e.g. </span><span class=SourceText><span lang=EN-US
Choose the installation language from the drop-down list. This choice only applies to the installation wizard.
style='font-size:10.5pt'>testzone3</span></span><span lang=EN-US> on server </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>testitis03 </span></span><span
lang=EN-US>as the user </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>moodle</span></span><span lang=EN-US>.</span></p>


<p class=MsoBodyText><span lang=EN-US>Set the <b>environment variables</b>,
Click the next button to continue.
preferable in the </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>.profile</span></span><span lang=EN-US> of the  de
user </span><span class=SourceText><span lang=EN-US style='font-size:10.5pt'>moodle</span></span><span
lang=EN-US>: </span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
[[Image:Image001.jpg]]
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
== Check PHP settings ==
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ export
If you followed the above mentioned instructions for php, you should get the following screen.
ORACLE_HOME=/oracle/product/instantclient_10_2 </span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
In case of a Fail, recheck the PHP settings in php.ini.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ export
LD_LIBRARY_PATH=$ORACLE_HOME </span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
[[Image:Image002.jpg]]
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ export
TNS_ADMIN=/var/opt/oracle </span></p>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
== Set installation and data directories ==
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$ export
In this step you define the basic locations of all Moodle-related files. Unless you chose a different location for the moodledata folder you do not need to change anything.
PATH=$PATH:/usr/local/bin:/local/bin:. </span></p>


</div>
It is adviseable to keep the Moodle software and the data (courses, uploaded assignments etc.) separately;


<p class=MsoBodyText><b><span lang=EN-US>Start Apache </span></b><span
In case of VDAB the web address is e.g. testzone2 or testzone3 and the data directory is /usr/local/moodle_1.9+/moodle
lang=EN-US>with the configuration file adapted to moodle: </span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
[[Image:Image003.jpg]]
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
== Set Database connection ==
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB>$
In this step we will set up the connection to the database:
/usr/local/apache2/bin/apachectl -k start -f
/usr/local/moodle_1.9+/moodle/httpd.conf </span></p>


</div>
* Select Oracle from the drop-down list
* For an Oracle installation, leave the Host entry empty
* Provide the name of the Oracle database you created e.g. moodle
* The database admin username and password
* Add a table prefix e.g. m_


<p class=MsoBodyText><span lang=EN-US>If desired you can install other
[[Image:Image004.jpg]]
languages during the installation wizard by downloading the appropriate
language files e.g. Dutch (<a
href="http://download.moodle.org/lang16/nl_utf8.zip">http://download.moodle.org/lang16/nl_utf8.zip</a>)
to </span><span class=SourceText><span lang=EN-US style='font-size:10.5pt'>/usr/local/moodle_1.9+/moodledata/lang
</span></span><span lang=EN-US>and uncompress the file.</span></p>


<div style='border:solid gray 1.0pt;padding:1.0pt 1.0pt 1.0pt 1.0pt;background:
== Server checks for installed components ==
#FFFFCC;margin-left:1.0cm;margin-right:1.0cm'>
The installation wizard will now perform an '''availability check '''on the required System Components.


<p class=Code style='margin-top:2.85pt;margin-right:0cm;margin-bottom:2.85pt;
If you checked all the required PHP settings and modules during the pre-installation phase, you should get the following screen.
margin-left:0cm;background:#FFFFCC'><span lang=EN-GB># unzip nl_utf8.zip </span></p>


</div>
[[Image:Image005.jpg]]


<p class=MsoBodyText><span lang=EN-US>A list of additional languages is
== Install language packs ==
available from the administration interface. Moodle then automatically
Since we chose a '''Dutch installation''', we now get an option to download the '''Dutch language files '''for the user interface. Provided you have direct write access to the Moodle server, the set-up of the language pack is '''automatic'''.  
downloads and installs the selected languages.</span></p>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.2<span
[[Image:Image006.jpg]]If the '''download is unsuccessful''', you will get the error message below. To resolve this problem, you can either:
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Choose installation language</span></h2>


<p class=MsoBodyText><span lang=EN-US>Choose the installation language from the
* Select other languages by using the ''Administrator interface ''when the installation is complete (Administration > Language > Language packs).
drop-down list. This choice only applies to the installation wizard.</span></p>
* ''Unzip the language file on the server ''in the lang files directory e.g. <nowiki><path to Moodle directory>/moodledata/lang</nowiki>


<p class=MsoBodyText><span lang=EN-US>Click the next button to continue.</span></p>
[[Image:Image007.jpg]]


<p class=MsoBodyText><img width=391 height=238
== Confirmation for written configuration file. ==
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image001.jpg"><br clear=ALL>
All the settings we made in prior steps are now collected and written to the '''Moodle configuration file '''(config.php).  
</p>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.3<span
[[Image:Image008.jpg]]In this step, the basic Moodle configuration is complete. In the next steps, the setup will add the database tables and prepare Moodle for use.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Check PHP settings</span></h2>


<p class=MsoBodyText><span lang=EN-US>If you followed the above mentioned
== Licence agreement ==
instructions for php, you should get the following screen.</span></p>
Carefully read and '''accept the licence agreement '''before proceeding to the final installation steps.


<p class=MsoBodyText><span lang=EN-US>In case of a Fail, recheck the PHP
[[Image:Image009.jpg]]
settings in </span><span class=SourceText><span lang=EN-US style='font-size:
10.5pt'>php.ini</span></span><span lang=EN-US>.</span></p>


<p class=MsoBodyText><img width=381 height=335
== Release information ==
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image002.jpg"><br clear=ALL>
This page provides the release information and the possibility to perform the following steps automatically (unattended). We will simply click next in order to capture potential setup errors.
</p>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.4<span
[[Image:Image010.jpg]]
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Set installation and data directories</span></h2>


<p class=MsoBodyText><span lang=EN-US>In this step you define the basic locations
Following steps can be performed automatically (unattended) or with manual confirmation.
of all Moodle-related files. Unless you chose a different location for the
moodledata folder you do not need to change anything.</span></p>


<p class=MsoBodyText><span lang=EN-US>It is adviseable to keep the Moodle
== Automatic database setup ==
software and the data (courses, uploaded assignments etc.) separately;</span></p>
What follows is a series of screens for the '''setup of the database tables for all of the standard Moodle components'''. Apart from clicking next, no user interaction is required.


<p class=MsoBodyText><span lang=EN-US>In case of VDAB the web address is e.g. </span><span
[[Image:Image011.jpg]]After each sequence a '''confirmation of success '''appears.  
class=SourceText><span lang=EN-US style='font-size:10.5pt'>testzone2</span></span><span
lang=EN-US> or </span><span class=SourceText><span lang=EN-US style='font-size:
10.5pt'>testzone3</span></span><span lang=EN-US> and the data directory is </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>/usr/local/moodle_1.9+/moodle</span></span></p>


<p class=MsoBodyText><span lang=EN-US><img border=0 width=398 height=334
[[Image:Image012.jpg]]This is the final step in the database set-up sequence.
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image003.jpg"></span></p>


<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
[[Image:Image013.jpg]]


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.5<span
== Setting up the administrator account ==
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
Now that the system is ready, we only need to provide details for an initial administrator account.  
</span></span><span lang=EN-GB>Set Database connection</span></h2>


<p class=MsoBodyText><span lang=EN-US>In this step we will set up the
These data can be changed and/or complemented later. This is the account that will initially be used after installation to allow further configuration of the system.
connection to the database:</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
[[Image:Image014.jpg]]
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Select
</span><span class=SourceText><span lang=EN-US style='font-size:10.5pt'>Oracle</span></span><span
lang=EN-US> from the drop-down list</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
== Set up Frontpage ==
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
During this final step of the installation wizard, we will put:
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>For
an Oracle installation, leave the Host entry empty</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
* The '''Full site name '''e.g. the name of the institution. This will be visible in the title bar in all of the standard templates.
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
* As '''Short name for the site'''.
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
* A '''Front page description''' of the site. This will be displayed as a welcome message on the start page.
lang=EN-US>Provide the name of the Oracle database you created e.g. </span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>moodle</span></span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
[[Image:Image015.jpg]]
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>The
database admin username and password</span></p>


<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
== Start with empty Moodle ==
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
We are then automatically redirected to the '''Moodle start page'''. Our Moodle is up and running and we can now continue with the configuration of the system.
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><span
lang=EN-US>Add a table prefix e.g. </span><span class=SourceText><span
lang=EN-US style='font-size:10.5pt'>m_</span></span></p>


<p class=MsoBodyText><img width=416 height=475
[[Image:Image016.jpg]]
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image004.jpg"><br clear=ALL>
</p>


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.6<span
When we click '''Turn editing on''' we can start the configuration. We will need to verify the system location of some additional components. The installation procedure does not check for the availability of a zip program. Moodle especially needs zip and unzip when handling SCORM packages. Using the built-in unzip feature may impact server performance.
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Server checks for installed components</span></h2>


<p class=MsoBodyText><span lang=EN-US>The installation wizard will now perform
[[Image:Image017.jpg]]
an <b>availability check </b>on the required System Components.</span></p>


<p class=MsoBodyText><span lang=EN-US>If you checked all the required PHP
== Add template ==
settings and modules during the pre-installation phase, you should get the
To add a theme to a Moodle installation:
following screen.</span></p>


<p class=MsoBodyText><img width=395 height=556
* Extract a theme to /usr/local/moodle_1.9+/moodledata/theme
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image005.jpg"><br clear=ALL>
* Log into Moodle as admin, go to Site Administration >Appearance >Themes > Theme Selector
</p>
* Select the theme from the list.


<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.7<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Install language packs</span></h2>


<p class=MsoBodyText><span lang=EN-US>Since we chose a <b>Dutch installation</b>,
==See also==
we now get an option to download the <b>Dutch language files </b>for the user
interface. Provided you have direct write access to the Moodle server, the
set-up of the language pack is <b>automatic</b>. </span></p>


<p class=MsoBodyText><img width=419 height=270
[[Category:Installation]]
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image006.jpg"><br clear=ALL>
<span lang=EN-US>If the <b>download is unsuccessful</b>, you will get the error
message below. To resolve this problem, you can either:</span></p>
 
<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>Select
other languages by using the <i>Administrator interface </i>when the
installation is complete (Administration &gt; Language &gt; Language packs).</span></p>
 
<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
class=SourceText><span lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span></span><i><span
lang=EN-US>Unzip the language file on the server </span></i><span lang=EN-US>in
the lang files directory e.g. </span><span class=SourceText><span lang=EN-US
style='font-size:10.5pt'>&lt;path to Moodle directory&gt;/moodledata/lang</span></span></p>
 
<p class=MsoBodyText><img width=420 height=385
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image007.jpg"><br clear=ALL>
</p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.8<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Confirmation for written configuration file.</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>All the settings we made in prior steps
are now collected and written to the <b>Moodle configuration file </b>(</span><span
class=SourceText><span lang=EN-US style='font-size:10.5pt'>config.php</span></span><span
lang=EN-US>). </span></p>
 
<p class=MsoBodyText><img width=393 height=190
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image008.jpg"><br clear=ALL>
<span lang=EN-US>In this step, the basic Moodle configuration is complete. In
the next steps, the setup will add the database tables and prepare Moodle for
use.</span></p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.9<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><span lang=EN-GB>Licence agreement</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>Carefully read and <b>accept the licence
agreement </b>before proceeding to the final installation steps.</span></p>
 
<p class=MsoBodyText><img width=665 height=259
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image009.jpg"><br clear=ALL>
</p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.10<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span
lang=EN-GB>Release information</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>This page provides the release
information and the possibility to perform the following steps automatically
(unattended). We will simply click next in order to capture potential setup
errors.</span></p>
 
<p class=MsoBodyText><img width=665 height=139
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image010.jpg"><br clear=ALL>
</p>
 
<p class=MsoBodyText><a name="DDE_LINK"><span lang=EN-US>Following steps can be
performed automatically (unattended) or with manual confirmation.</span></a></p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.11<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span
lang=EN-GB>Automatic database setup</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>What follows is a series of screens for
the <b>setup of the database tables for all of the standard Moodle components</b>.
Apart from clicking next, no user interaction is required.</span></p>
 
<p class=MsoBodyText><img width=469 height=439
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image011.jpg"><br clear=ALL>
<span lang=EN-US>After each sequence a <b>confirmation of success </b>appears. </span></p>
 
<p class=MsoBodyText><img width=599 height=402
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image012.jpg"><br clear=ALL>
<span lang=EN-US>This is the final step in the database set-up sequence.</span></p>
 
<p class=MsoBodyText><img width=534 height=250
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image013.jpg"><br clear=ALL>
</p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.12<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span
lang=EN-GB>Setting up the administrator account</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>Now that the system is ready, we only
need to provide details for an initial administrator account. </span></p>
 
<p class=MsoBodyText><span lang=EN-US>These data can be changed and/or
complemented later. This is the account that will initially be used after
installation to allow further configuration of the system.</span></p>
 
<p class=MsoBodyText><img width=665 height=452
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image014.jpg"><br clear=ALL>
</p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.13<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span
lang=EN-GB>Set up Frontpage</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>During this final step of the
installation wizard, we will put:</span></p>
 
<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>The <b>Full
site name </b>e.g. the name of the institution. This will be visible in the
title bar in all of the standard templates.</span></p>
 
<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>As <b>Short
name for the site</b>.</span></p>
 
<p class=MsoBodyText style='margin-left:36.0pt;text-indent:-18.0pt'><span
lang=EN-US style='font-size:9.0pt;font-family:Wingdings'>l<span
style='font:7.0pt "Times New Roman"'>&nbsp; </span></span><span lang=EN-US>A <b>Front
page description</b> of the site. This will be displayed as a welcome message
on the start page.</span></p>
 
<p class=MsoBodyText><span lang=EN-US>&nbsp;</span></p>
 
<p class=MsoBodyText><img width=665 height=375
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image015.jpg"><br clear=ALL>
</p>
 
<h2 style='margin-left:0cm;text-indent:0cm'><span lang=EN-GB>5.14<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span
lang=EN-GB>Start with empty Moodle</span></h2>
 
<p class=MsoBodyText><span lang=EN-US>We are then automatically redirected to
the <b>Moodle start page</b>. Our Moodle is up and running and we can now
continue with the configuration of the system.</span></p>
 
<p class=MsoBodyText><img width=665 height=295
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image016.jpg"><br clear=ALL>
</p>
 
<p class=MsoBodyText><span lang=EN-US>When we click <b>Turn editing on</b> we
can start the configuration. We will need to verify the system location of some
additional components. The installation procedure does not check for the
availability of a zip program. Moodle especially needs zip and unzip when
handling SCORM packages. Using the built-in unzip feature may impact server
performance.</span></p>
 
<p class=MsoBodyText><img width=665 height=431
src="VDAB_Moodle_Installation_DOC_1.0_bestanden/image017.jpg"><br clear=ALL>
</p>
 
<div style='border:none;border-bottom:solid black 1.0pt;padding:0cm 0cm 0cm 0cm'>
 
</div>

Latest revision as of 21:11, 28 January 2011

Installation Documentation
for
Moodle at VDAB


Table of Contents1 Purpose of this document1

2 Setting up the Oracle Database2

3 Configuring Apache2

3.1 Install Apache2

3.2 Install OCI 8 and Oracle Instant Client3

3.3 Install PHP4

3.4 Change PHP settings6

3.5 Add GNU Coreutils7

4 Install Moodle7

4.1 Prepare the Moodle installation files7

4.2 Choose installation language8

4.3 Check PHP settings8

4.4 Set installation and data directories10

4.5 Set Database connection11

4.6 Server checks for installed components12

4.7 Install language packs19

4.8 Confirmation for written configuration file.21

4.9 Licence agreement21

4.10 Release information21

4.11 Automatic database setup22

4.12 Setting up the administrator account23

4.13 Set up Frontpage24

4.14 Start with empty Moodle25

4.15 Add template Purpose of this document This document provides an in-depth installation manual for Moodle on Solaris 10 with Oracle 10.2.0.2.

We provide an overview of the different steps involved:

  • Preparing Oracle 10g for a large Moodle installation
  • Configuring Apache 2.2 for a secure and high-performance webserver
  • Preparing all necessary PHP packages for Apache and Oracle
  • Preparing PHP settings for Moodle
  • An overview of the steps in the Moodle installation wizard.

Setting up the Oracle Database

We set up 2 parallel Moodle installations on one and a database on a separate server. Both installations share the same Oracle database, but use a different tablespace.

The Oracle 10.2.0.2 database runs on a Solaris 10 and is set up using Oracle's DBCA tool.

  • This is testzone1 on the test server testitis00
  • Database name = testitis02.vdab.be
  • We used the General purpose template for the database set-up;
  • And set UTF8 character encoding to NLS_LANG=AMERICAN_AMERICA.AL32UTF8

For each Moodle installation we create a separate Tablespace:

  • First Moodle installation on testzone2:
    • MOODLE_DATA with initial size of 300MB
    • User: MOODLEUSER, password: moodle
    • The user only has rights within the specified tablespace
  • Second Moodle installation on testzone3:
    • MOODLE_DATA2 with initial size of 300MB
    • User: MOODLEUSER2, password: moodle
    • The user only has rights within the specified tablespace

Configuring Apache

Install Apache

First download the latest Apache e.g. httpd-2.2.8.tar.gz from http://httpd.apache.org/download.cgi to the folder /usr/local/apache2

Log in as root, uncompress the Apache files and go to the installation folder.

# gzip -d httpd-2.2.8.tar.gz

# tar -xvf httpd-2.2.8.tar

# cd httpd-2.2.8

Adapt the Environment Variables to make sure the correct gcc and make are used.

# export PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin:.

Configure and make Apache:

# make clean --> only if necessary

# ./configure \

--prefix=/usr/local/apache2 \

--with-included-apr

# make

# make install

In order to increase performance edit the following in the httpd.conf file:

# vi /usr/local/moodle_1.9+/moodle/httpd.conf -- > opens text editor

DirectoryIndex index.php

Listen 8002 -- > for VDAB

DocumentRoot “/usr/local/moodle_1.9+/moodle”

AcceptPathInfo on

If you're running Moodle on Oracle with Apache on Linux, you might have issues with PHP being able to see the system environment variables. To resolve this, you can edit /etc/sysconfig/apache2 and add the following lines to the bottom:

LD_LIBRARY_PATH=/opt/oracle/instantclient_11_2# Set LANG Variables for UTF-8
NLS_LANG=AMERICAN_AMERICA.AL32UTF8
LANG=en_US.UTF-8
LC_ALL=en_US.UTF-8
LC_COLLATE=en_US.UTF-8
LC_CTYPE=en_US.UTF-8
LC_MESSAGES=en_US.UTF-8
LC_MONETARY=en_US.UTF-8
LC_NUMERIC=en_US.UTF-8
LC_TIME=en_US.UTF-8
export LANG LC_ALL LC_COLLATE LC_CTYPE LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIM NLS_LANG LD_LIBRARY_PATH

Also need to add those two lines to ~/.bashrc so that the PHP command-line client can see it too.


Install OCI 8 and Oracle Instant Client

Download the 32bit Solaris Basic en SDK: instantclient-basic-solaris6432-10.2.0.3-20070101.zip and

instantclient-sdk-solaris6432-10.2.0.3-20070101.zip from

http://www.oracle.com/technology/tech/oci/instantclient/index.html to a folder e.g. /oracle/product.


Log in as the user oracle and uncompress the installation files:

$ cd /oracle/product

$ unzip instantclient-basic-solaris6432-10.2.0.3-20070101.zip --> creates the directory instantclient_10_2

$ unzip instantclient-sdk-solaris6432-10.2.0.3-20070101.zip --> is put into the directory instantclient_10_2


Adapt the tnsnames to set an alias or Oracle net service name. Each net service name entry contains connect descriptors that define listener and service information.

$ cd $TNS_ADMIN --> for VDAB this is /var/opt/oracle)

$ vi tns_admin _--> Below an example adaptation:_

moodle =

(DESCRIPTION =

(ADDRESS =

(COMMUNITY = TCPDEV.world)

(PROTOCOL = TCP)

(HOST = testzone1)

(PORT = 1521)

)

(CONNECT_DATA =

(SID = testitis02)

)

)


If necessary, create and adapt a sqlnet.ora file. For VDAB this was not necessary.


Create two Symbolic Links.

$ ln -s /oracle/product/instantclient_10_2/libclntsh.so.10.1

/oracle/product/instantclient_10_2/libclntsh.so

$ ln -s /oracle/product/instantclient_10_2/libocci.so.10.1

/oracle/product/instantclient_10_2/libocci.so

Install PHP

To install PHP on the Apache server, download php-5.2.5.tar.gz from http://www.php.net/downloads to the folder /usr/local/apache2

Log in as root, uncompress the PHP files and go to the installation folder.

# gzip -d php-5.2.5.tar.gz

# tar -xvf php-5.2.5.tar

# cd php-5.2.5

Adapt the Environment Variables to make sure the correct gcc and make are used.

# export PATH=$PATH:/usr/sfw/bin:/usr/ccs/bin

# export LD_LIBRARY_PATH=/oracle/product/instantclient_10_2

The following table provides a brief overview of the PHP extensions and what they are used for. All of these are required to do a fully functional Moodle installation.


PHP Extensions
Description
GD

Freetype 2

GD is commonly used to generate charts, graphics, thumbnails, etc. on the fly.

Freetype provides an API to manipulate fonts.

Moodle uses these modules to generate dynamic graphs from the logs.

OCI8 Required connector for Oracle
zlib (alternatively use zip or unzip) Zlib is required for zip/unzip funcitonality based on the deflate compression method.

Moodle itself can also handle this functionality, but this impacts the use of server resources.

curl curl is a client to get files from servers. It is used for handling files using a wide variety of protocols.

This is a requirement for Moodle 1.8 and later



openssl Library to enable secured connections to a server. This is mainly used for connections between Moodle installations e.g. to share courses.
php5-LDAP Enables the use of LDAP functions in PHP
aspell-xx The optional aspell modules provide a free spelling checker functionality embedded in Moodle. This module support a very large number of languages. XX represents the 2-letter code for the language.

For a default Solaris most of these modules are available by default. We only need to install curl and enable these modules in the Apache-Php configuration.

We first install curl. Download the package curl-7.18.1.tar.gz from http://curl.haxx.se to /usr/local/apache2.

Log in as root, uncompress the curl files and go to the installation folder to make and install.

# gunzip curl-7.18.1.tar.gz

# tar -xvf curl-7.18.1.tar

# cd curl-7.18.1

# ./configure

# make

# make install

In order to test the curl installation do

/usr/local/bin/curl -V

If necessary, extend PATH to /usr/local/bin. This was not necessary for VDAB.

Next, we will configure, and install the PHP for Apache make links to the PHP extensions.

# cd /usr/local/apache2/php-5.2.5

# ./configure \

--with-apxs2=/usr/local/apache2/bin/apxs \

--with-config-file-path=/usr/local/apache2/conf \

--with-oci8=instantclient,/oracle/product/instantclient_10_2 \

--enable-sigchild \

--enable-mbstring \

--with-gd \

--with-openssl \

--with-curl=/usr/local/apache2/curl-7.18.1

--with-ldap=/usr/local

# make

# make install


Change PHP settings

By default there is no php.ini file. However, there is a php.ini-recommended which we will use to make the required adaptations listed in the table below. Afterwards we will make a copy of this file and make it the active Php configuration file.

# vi /usr/local/apache2/conf/php.ini-recommended --> Open text editor and make adaptations

# cp /usr/local/apache2/php-5.2.5/php.ini-recommended /usr/local/apache2/conf/php.ini

In the file edit the following settings:


Setting
Value we used in php.ini
Safe mode must be off ; Safe mode

safe_mode = Off

memory_limit is at least 128MB ; Resource Limits

memory_limit = 128M ; Maximum amount of memory a script may consume

session.save_handler needs to be set to FILES. [Session]

; Handler used to store/retrieve data.

session.save_handler = files

magic_quotes_gpc needs to be ON

magic_quotes_runtime needs to be OFF

; Magic quotes for incoming GET/POST/Cookie data.

magic_quotes_gpc = On

; Magic quotes for runtime-generated data, e.g. data from SQL, from exec(), etc.

magic_quotes_runtime = Off

file_uploads needs to be ON ; Whether to allow HTTP file uploads.

file_uploads = On

session.auto_start needs to be OFF ; Initialize session on request startup.

session.auto_start = 0

session.bug_compat_warn needs to be OFF session.bug_compat_warn = 0
post_max_size is too small by default and needs to be increased e.g. when you run into problems while creating online content ; Maximum size of POST data that PHP will accept.

post_max_size = 300M

upload_max_filesize needs to be increased e.g. to allow uploading larger course packages ; Maximum allowed size for uploaded files.

upload_max_filesize = 300M

magic_quotes_sybase should be on for Oracle installations. magic_quotes_sybase = On

Add GNU Coreutils

Also install the GNU Coreutils for Solaris in order to avoid Apache error described in case MDL-6850 . The Coreutils will include the du command which is required by Moodle to collect and calculate data on file sizes.

Download coreutils-6.4-sol10-sparc-local.gz from http://www.sunfreeware.com/solaris_2.5_list.html#coreutils to your global zone as root .

gunzip coreutils-6.4-sol10-sparc-local.gz

pkgadd -d coreutils-6.4-sol10-sparc-local.gz

Go to Administration > Configuration > Variables > Operating System and enter the path to entry pathtodu to the GNU du in /usr/local/bin/du (was /usr/bin/du) .

Set the correct path in the Moodle administration interface. Go to Administration > Server > System Paths and fill out the correct path in the Path to du entry.

Install Moodle

Prepare the Moodle installation files

Now that we have completed the set-up for Apache, PHP, Oracle and the connection between PHP and Oracle we prepare for the Moodle installation.

Log in as root and create a moodle user assigned to a group and set a password.

# mkdir /export/home/moodle

# useradd -u 1005 -g 101 -d /export/home/moodle -s /bin/bash -c "Moodle" -m moodle

# chown moodle:users /export/home/moodle

# passwd moodle

Log in as root to create a directory for the Moodle installation:

# mkdir /usr/local/moodle_1.9+

# chown moodle:users /usr/local/moodle_1.9+

Download moodle-weekly-19.tgz from http://download.moodle.org/. Log in as the user moodle and copy the file to /usr/local/moodle_1.9+ and uncompress the file:

$ gunzip moodle-weekly-19.tgz

$ tar -vxf moodle-weekly-19.tar --> creates subdirectory 'moodle'

Now log onto the system where you will install Moodle e.g. testzone3 on server testitis03 as the user moodle.

Set the environment variables, preferable in the .profile of the de user moodle:

$ export ORACLE_HOME=/oracle/product/instantclient_10_2

$ export LD_LIBRARY_PATH=$ORACLE_HOME

$ export TNS_ADMIN=/var/opt/oracle

$ export PATH=$PATH:/usr/local/bin:/local/bin:.

Start Apache with the configuration file adapted to moodle:

$ /usr/local/apache2/bin/apachectl -k start -f /usr/local/moodle_1.9+/moodle/httpd.conf

If desired you can install other languages during the installation wizard by downloading the appropriate language files e.g. Dutch (http://download.moodle.org/lang16/nl_utf8.zip) to /usr/local/moodle_1.9+/moodledata/lang and uncompress the file.

# unzip nl_utf8.zip

A list of additional languages is available from the administration interface. Moodle then automatically downloads and installs the selected languages.

Choose installation language

Choose the installation language from the drop-down list. This choice only applies to the installation wizard.

Click the next button to continue.

Image001.jpg

Check PHP settings

If you followed the above mentioned instructions for php, you should get the following screen.

In case of a Fail, recheck the PHP settings in php.ini.

Image002.jpg

Set installation and data directories

In this step you define the basic locations of all Moodle-related files. Unless you chose a different location for the moodledata folder you do not need to change anything.

It is adviseable to keep the Moodle software and the data (courses, uploaded assignments etc.) separately;

In case of VDAB the web address is e.g. testzone2 or testzone3 and the data directory is /usr/local/moodle_1.9+/moodle

Image003.jpg

Set Database connection

In this step we will set up the connection to the database:

  • Select Oracle from the drop-down list
  • For an Oracle installation, leave the Host entry empty
  • Provide the name of the Oracle database you created e.g. moodle
  • The database admin username and password
  • Add a table prefix e.g. m_

Image004.jpg

Server checks for installed components

The installation wizard will now perform an availability check on the required System Components.

If you checked all the required PHP settings and modules during the pre-installation phase, you should get the following screen.

Image005.jpg

Install language packs

Since we chose a Dutch installation, we now get an option to download the Dutch language files for the user interface. Provided you have direct write access to the Moodle server, the set-up of the language pack is automatic.

File:Image006.jpgIf the download is unsuccessful, you will get the error message below. To resolve this problem, you can either:

  • Select other languages by using the Administrator interface when the installation is complete (Administration > Language > Language packs).
  • Unzip the language file on the server in the lang files directory e.g. <path to Moodle directory>/moodledata/lang

Image007.jpg

Confirmation for written configuration file.

All the settings we made in prior steps are now collected and written to the Moodle configuration file (config.php).

Image008.jpgIn this step, the basic Moodle configuration is complete. In the next steps, the setup will add the database tables and prepare Moodle for use.

Licence agreement

Carefully read and accept the licence agreement before proceeding to the final installation steps.

Image009.jpg

Release information

This page provides the release information and the possibility to perform the following steps automatically (unattended). We will simply click next in order to capture potential setup errors.

Image010.jpg

Following steps can be performed automatically (unattended) or with manual confirmation.

Automatic database setup

What follows is a series of screens for the setup of the database tables for all of the standard Moodle components. Apart from clicking next, no user interaction is required.

Image011.jpgAfter each sequence a confirmation of success appears.

Image012.jpgThis is the final step in the database set-up sequence.

Image013.jpg

Setting up the administrator account

Now that the system is ready, we only need to provide details for an initial administrator account.

These data can be changed and/or complemented later. This is the account that will initially be used after installation to allow further configuration of the system.

Image014.jpg

Set up Frontpage

During this final step of the installation wizard, we will put:

  • The Full site name e.g. the name of the institution. This will be visible in the title bar in all of the standard templates.
  • As Short name for the site.
  • A Front page description of the site. This will be displayed as a welcome message on the start page.

Image015.jpg

Start with empty Moodle

We are then automatically redirected to the Moodle start page. Our Moodle is up and running and we can now continue with the configuration of the system.

Image016.jpg

When we click Turn editing on we can start the configuration. We will need to verify the system location of some additional components. The installation procedure does not check for the availability of a zip program. Moodle especially needs zip and unzip when handling SCORM packages. Using the built-in unzip feature may impact server performance.

Image017.jpg

Add template

To add a theme to a Moodle installation:

  • Extract a theme to /usr/local/moodle_1.9+/moodledata/theme
  • Log into Moodle as admin, go to Site Administration >Appearance >Themes > Theme Selector
  • Select the theme from the list.


See also