Chamilo is a learning management system focused on ease of use and accessibility
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
chamilo-lms/documentation/installation_guide.html

870 lines
45 KiB

<html lang="en">
<head>
<meta charset="utf-8" />
<title>Chamilo Installation Guide</title>
<link rel="stylesheet" href="../main/css/base.css" type="text/css" media="screen,projection" />
<link rel="stylesheet" href="default.css" type="text/css" media="screen,projection" />
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
<link href="js/prettify.css" type="text/css" rel="stylesheet" />
<script src="js/prettify.js" type="text/javascript"></script>
</head>
<body>
<div class="navbar navbar-fixed-top">
<div class="navbar-inner">
<div class="container-fluid">
<a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</a>
<a class="brand" href="index.html">Chamilo - Documentation</a>
<div class="nav-collapse">
<ul class="nav">
<li><a href="index.html">Home</a></li>
<li ><a href="readme.html">About</a></li>
<li ><a href="license.html">License</a></li>
<li><a href="credits.html">Credits</a></li>
<li><a href="dependencies.html">Dependencies</a></li>
<li><a href="changelog.html">Changelog</a></li>
</ul>
</div><!--/.nav-collapse -->
</div>
</div>
</div>
<div class="container">
<h1>Chamilo - Installation Guide</h1>
<p>Thank you for downloading Chamilo</p>
<ul>
<li>Test Chamilo on <a href="http://campus.chamilo.org">Free Campus</a></li>
</ul>
<p>This guide explains how to install Chamilo FREE. Please read this fully before proceeding with the installation.</p>
<h2><b>Contents</b></h2>
<ol>
<li><a href="#1._Pre-requisites">Pre-requisites</a></li>
<li><a href="#2._Installation_of_Chamilo_LMS">Installation of Chamilo LMS</a></li>
<li><a href="#3._Upgrade_from_a_previous_version_of">Upgrade from a previous version of Chamilo/Dok€os</a></li>
<li><a href="#4._Troubleshooting">Troubleshooting</a></li>
<li><a href="#5._Administration_section">Administration section</a></li>
<li><a href="#6._LDAP">LDAP&nbsp;</a></li>
<li><a href="#7._Mathematical_formulas">Mathematical formulas with LaTeX</a></li>
<li><a href="#8._ASCIIMathML_mathematical_formulas">Mathematical formulas with ASCIIMathML</a></li>
<li><a href="#9._WIRIS_mathematical_formulas">Mathematical formulas with WIRIS</a></li>
<li><a href="#10._Xapian_fulltext_indexing">Full-text indexation with Xapian</a></li>
<li><a href="#11._Chamilo_rapid_ppt_conversion">Chamilo Rapid - PPT conversion system</a></li>
<li><a href="#12._Setting_cron_up">Setting chronological tasks</a></li>
<li><a href="#13._Changing_language_name_order">Changing the language's firstname/lastname order</a></li>
</ol>
<br />
<hr style="width: 100%; height: 2px;" />
<h2><a name="1._Pre-requisites"></a>1. Pre-requisites</h2>
Chamilo
can be installed on Windows, GNU/Linux, Mac OS X and UNIX servers
indifferently. However, we recommend the use of GNU/Linux for
optimal flexibility, remote control and scalability. <br />
<br />
Chamilo is mainly a LMS running from <span style="font-weight: bold;">Apache (1.3, 2.0 or 2.2)</span>, with a <span style="font-weight: bold;">MySQL 5.1 (or MariaDB)</span> database backend and <span style="font-weight: bold;">PHP 5.3 (or 5.4)</span> (the so called <span style="font-weight: bold;">AMP</span> trilogy). <br />
<br />
All these pieces of software are Free Software and as such freely available. <br />
<br />
To run Chamilo <span style="font-weight: bold;">LMS</span> on your server, you need to install WAMP, LAMP or MAMP:
<ul>
<li>To install <span style="font-weight: bold;">WAMP</span> (AMP on Windows), we recommend the <a href="http://www.apachefriends.org/en/xampp.html">XAMPP</a> .exe installer<a href="http://www.apachefriends.org/en/xampp.html"></a></li>
<li>To install <span style="font-weight: bold;">LAMP</span>
(AMP on Linux), use the Package manager of your favourite distribution (Synaptic, RPMFinder, APT, YUM, etc.).
For instance, on an Ubuntu server,&nbsp;use apt-get from the Shell or Synaptic from the GUI following the
<a href="https://help.ubuntu.com/lts/serverguide/httpd.html">Ubuntu Server Guide about Apache</a> and the following sections</li>
<li>To install <span style="font-weight: bold;">MAMP</span> (AMP on Mac OS X), refer to the <a href="http://www.mamp.info/en/index.php">MAMP</a> dedicated website<a href="http://www.mamp.info/en/index.php"></a></li>
<li>Make sure you check the <a href="dependencies.html" title="Dependencies">Dependencies page</a> if you need to know the requirements in more precise way.
</ul>
<br />
<h3><span style="font-weight: bold;">MySQL or MariaDB database server</span></h3>
You will need a login and password allowing to manage and create
a database. Usually, the default configuration on local computers is to allow you to connect as root with an empty password. It is highly recommended to change the password and define a user with access to only a specific database. Please refer to the MySQL or MariaDB documentation in order to do this.<br />
<span class="muted">Note that this has been greatly simplified since version 1.9, as it
previously required to choose between multiple databases and a deprecated single-database mode.</span><br />
<hr style="width: 100%; height: 2px;" />
<h2><a name="2._Installation_of_Chamilo_LMS"></a><span style="font-weight: bold;">2. Installation of Chamilo LMS</span></h2>
<h3>Configuring your web server to allow .htaccess overrides</h3>
Starting from 1.10, Chamilo LMS allows friendly URLs if using Apache. As it is based on .htaccess and rewrites, you will be required to <b>AllowOverride All</b> (and possibly enable the ModRewrite extension for Apache). This means that, inside your Apache configuration (or your VirtualHost configuration), you will need to have a block similar to this (the directory given is the same as in the <i>DocumentRoot</i> directive):
<pre>
&lt;Directory /var/www/chamilo&gt;
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
&lt;/Directory&gt;
</pre>
<p>
In particular, the "AllowOverride All" clause is the one that matters. This will allow PHP to send the user from one page to another freely, thus allowing for friendlier URLs.<br />
Once you've made sure "AllowOverride" says "All", you can safely save the file, get out of it and reload the web server (<i>sudo service apache2 reload</i> under Debian/Ubuntu, orright-click on the WAMP/XAMP/EasyPHP icon and "reload web server" under Windows).</p>
<p>
Please note that, if you are using Chamilo LMS in a subdirectory (for example, you load it in your browser as http://localhost/chamilo/ or http://yoursite.com/chamilo/, you will also need to alter the .htaccess file in the root directory of Chamilo, <b>before</b> you proceed with the installation.<br />
On the RewriteBase line, where it normally says "/", change it to whatever subdirectory name you are using. In the default case described above, your RewriteBase will have to say "chamilo/" (without the quotes).
</p>
<h3>Downloading and installing Chamilo</h3>
<ol>
<li><a href="http://www.chamilo.org/download">Download Chamilo LMS</a></li>
<li>Unzip it</li>
<li>Copy the Chamilo directory in your Apache web directory. This can be
<span style="font-weight: bold;">C:\xampp\htdocs\</span> on a Windows server or <span style="font-weight: bold;">/var/www/html/</span> (or /var/www/chamilo/) on a Linux server</li>
<li>Open your web browser (Internet Explorer, Firefox...) and type
<span style="font-weight: bold;">http://localhost/chamilo/</span> if installing locally or
<span style="font-weight: bold;">http://www.domain.com/chamilo/</span> if installing remotely. <span class="muted">We recommend defining a specific Virtual Host for this installation if you have the skills to do so</span>
</li>
<li>Process through the web installation process. You can safely accept all default values. Consider changing the admin password to remember it.</li>
</ol>
<br />
Only the following directories need to be readable, writeable and executable by your web server.
<span class="muted">This usually requires no specific action on Windows servers, but will require a "chmod" under Linux/UNIX and Mac. See instructions below.</span>
<br />Replace [chamilo] with the directory where your Chamilo installation is located:
<ul>
<li>[chamilo]/config</li>
<li>[chamilo]/data</li>
<li>[chamilo]/logs</li>
<li>[chamilo]/temp</li>
<li>[chamilo]/main/default_course_document/images</li>
</ul>
Optionally, you can do the same to the following directories if you want to enable CSS styles package upload and sub-language definition:
<ul>
<li>[chamilo]/main/css/</li>
<li>[chamilo]/main/lang/</li>
</ul>
Since Chamilo 1.8.8, you can also enable full-text indexing features which
require the php5-xapian PHP's extension module to be installed. If you do use
it, you will need to allow your system to write into the searchdb directory:
<ul>
<li>[chamilo]/data/searchdb</li>
</ul>
If you find a tests/ directory at the root of your package, please delete it.
This is a development directory (automated tests) that has not been checked for security issues,
an it should *never* be accessible to final users on a production server.
<p>On Linux, Mac OS X and BSD operating systems you can use the <em>chmod
0775</em> command to this end (although we recommend you seek advice from an
experienced system administrator to avoid security issues).
On Windows, you may need to check the permissions of the folders (right-clicking on them).</p>
<p>The following directory needs to be readable and writeable for the web browser
<em>only</em> during the installation process:</p>
<ul>
<li>[chamilo]/config (if present)</li>
</ul>
<p>On Linux, Mac OS X and BSD operating systems you can use the <em>chmod
666</em> command for this (although we recommend you seek advice from an
experienced system administrator).
In Windows, you may need to check the permissions of the files and
folders (right-clicking on them).</p>
<p>
<b>NOTES:</b><br />
Do not edit the home_*.html files directly. Instead,
choose "Configure the homepage" in the Chamilo administration section.</p>
<p><span style="font-weight: bold;">Windows</span> : with all-in-one packages
like XAMPP, you can easily install Chamilo. In this case (and unless you use it
in production), the login and password for MySQL will probably remain empty.</p>
<p></p>
<h3><strong> Configuration and security after installation</strong></h3>
<ul>
<li><strong>Protect your configuration directory: </strong>
make sure no one (but you) can overwrite it. You can find the config directory in
<em>[chamilo]</em>/config
Make it read-only (Windows: right-click the file to edit its
permissions. Linux/UNIX/MacOsX: use the ""chmod 0555" command). The config
file is created by your web server (Apache + PHP, usually) so you may
need to be a privileged user to change its permissions afterwards.</li>
<li><strong>Protect your installation folder: </strong>
if the <em>[chamilo]</em>/main/install
folder is still accessible, someone could install over your existing
version (you could lose your data that way). Move the folder somewhere
out of the web directories so it is no longer accessible, rename it,
delete it completely or edit its permissions so no one can read or
execute it.</li>
<li><strong>For better security: </strong>
making the files world-writeable will help you install, and it solves many
issues for people without much sysadmin experience. Be aware though that it is more
secure to create a distinct user owning all the Chamilo files and folders,
and only give read access to the web server to all files, and write access
only to the directories previously mentioned. This way, these files need
only be readable and writeable by the Apache process owner, not by the
entire world. It would also be adviseable to make all writeable directories
refuse the interpretation of PHP files (except for the root of the courses
directories). Don't hesitate to hire an experienced administrator to do that, you'd be happy not to lose
all of your data in case a hacker ever attacks your site.</li>
<li><strong>Configure your Chamilo installation: </strong>
in the administration section of Chamilo, you can use the Chamilo Configuration Settings to adjust the behavior of your installation.</li>
<li><strong>Configure Chamilo mail: </strong>
Chamilo uses the mail settings from your PHP configuration file (php.ini) by default. However,
if you want to use a distinct e-mail server, you might need to adjust the
e-mail setting in <em>[chamilo]</em>/config/mail.conf.php.</li>
<li>Check our new <a href="./security.html">security guide</a> for more</li>
</ul>
<br />
<h3>PHP requirements and configuration</h3>
Chamilo LMS requires the following PHP extensions:
<ul>
<li><a href="http://www.php.net/manual/en/pcre.installation.php" target="_blank">PCRE</a> (enabled by default since PHP 4.2)</li>
<li><a hrer="http://www.php.net/manual/en/session.installation.php" target="_blank">session</a> (enabled by default since the creation of PHP)</li>
<li><a href="http://www.php.net/manual/en/json.installation.php" target="_blank">json</a> (enabled by default since PHP 5.2)</li>
<li><a href="http://www.php.net/manual/en/image.installation.php" target="_blank">gd</a> (not enabled by default)</li>
<li><a href="http://www.php.net/manual/en/mysql.installation.php" target="_blank">mysql</a> or <a href="http://www.php.net/manual/en/mysqlnd.install.php" target="_blank">mysqlnd</a> (neither of these is enabled by default, but we recommend mysqlnd for higher efficiency, mysql also being deprecated starting from PHP 5.5)</li>
<li><a href="http://www.php.net/manual/en/mbstring.installation.php" target="_blank">mbstring</a> (not enabled by default)</li>
<li><a href="http://www.php.net/manual/en/zlib.installation.php" target="_blank">zlib</a> (NOT enabled by default)</li>
</ul>
And optionally (for more features) the following PHP modules:
<ul>
<li><a href="http://www.php.net/manual/en/curl.installation.php" target="_blank">curl</a> (required for links checking in the links tool)</li>
<li><a href="http://www.php.net/manual/en/iconv.installation.php" target="_blank">iconv</a> (enabled by default, it is used as a second option to mbstring, required above, but Symfony components depend on mbstring only, so this recommendation might be removed in the future)</li>
<li><a href="http://www.php.net/manual/en/ldap.installation.php" target="_blank">ldap</a> (required only if you use LDAP authentication)</li>
<li><a href="http://xapian.org/download" target="_blank">xapian</a> (required only to use the text indexing feature - see further down this installation guide for install instructions)</li>
<li><a href="http://www.php.net/manual/en/imagick.installation.php" target="_blank">imagick</a> (generates better images thumbnails when using the text indexing feature requiring the Xapian extension)</li>
</ul>
To get the best out of Chamilo, you need to finetune your PHP settings. Consider : <br />
<ul>
<li>Editing php.ini file (on Windows can be located at
<span style="font-weight: bold;">C:\xampp\php\php.ini</span>,
on Ubuntu :
<span style="font-weight: bold;">/etc/php5/apache2/php.ini</span></li>
<li>search the word "_max" and increase the two values (post_max_size and upload_max_filesize) to optimise the server</li>
<li>we recommend the following values : </li>
</ul>
<ul>
<li>max_execution_time = 300; Maximum execution time of each script, in seconds</li>
<li>max_input_time = 600; Maximum amount of time each script may spend parsing request data</li>
<li>memory_limit = 256M; Maximum amount of memory a script may consume (128MB)</li>
<li>post_max_size = 100M</li>
<li>upload_max_filesize = 100M</li>
<li>session.cookie_httponly = On</li>
</ul>
<p>Some users could meet problems if their PHP settings don't match the following:</p>
<ul>
<li>short_open_tag = Off</li>
<li>safe_mode = Off</li>
<li>magic_quotes_gpc = Off</li>
<li>magic_quotes_runtime = Off</li>
</ul>
On any recent Debian/Ubuntu, just copying those lines into a new .ini file installed in /etc/php5/conf.d/ (e.g. /etc/php5/conf.d/chamilo.ini) and reloading Apache's config (i.e. "sudo service apache2 reload") would do the trick. Any later php.ini modification in this documentation could/should subsequently as well be applied in this file instead.
<p>
Past Chamilo releases required register_globals to be set to On. This is
no longer necessary, and should preferably be set to Off.
<span class="muted">It is considered a bad choice in terms of security to set register_globals to On.</a></p>
<p><strong>Note:</strong> if using PHP 5.3 or higher, you also need to set
your <em>date.timezone</em> setting to whatever your server's timezone is.
For example, if your server is in the 'America/New_York' timezone, set this
in your PHP .ini file:</p>
<div class="code">
date.timezone = 'America/New_York'
</div>
<p><strong>Note:</strong> PHP 5.3.9 introduces a new setting "max_input_vars", which limits the number of elements you can send in one single form. If you are dealing with numerous users, make sure you set this setting higher than its default value of 1000.</p>
<p><strong>BSD users:</strong> according to the requirements, the following PHP libraries have to be included during
PHP installation:</p>
<ul>
<li>php5-mysql The mysql shared extension for php</li>
<li>php5-pcre The pcre shared extension for php</li>
<li>php5-session The session shared extension for php</li>
<li>php5-zlib The zlib shared extension for php</li>
<li>(optional) php5-ldap if you want to be able to use LDAP authentication</li>
</ul>
<p>You might also add the following php modules and packages:</p>
<ul>
<li>php5-ctype</li>
<li>php5-gd</li>
<li>php5-imagick</li>
<li>php5-iconv</li>
<li>php5-json</li>
<li>php5-mbstring</li>
<li>php5-intl</li>
<li>php5-curl</li>
<li>php5-iconv</li>
<li>php5-xsl</li>
<li>php5-ldap</li>
<li>php5-xapian</li>
</ul>
<hr />
<h2><a name="3._Upgrade_from_a_previous_version_of"></a>3. Upgrade from a
previous version of Chamilo LMS (1.*) or Dok€os (&lt;2.0)</h2>
Before upgrading, we <b>heavily</b> recommend you do a full backup of the previous
Chamilo or Dok€os directories and databases. If you are unsure how to achieve this
please ask your hosting provider for advice.<br />
<em>Chamilo LMS 1.9 comes with a new database structure. Although the upgrade script
takes the migration in charge, it will be generate a very heavy load on your server
during the upgrade, and will change your database completely, preserving the data
as well as possible (we have tested the procedure many times, but remember this is
GNU/GPLv3 and we cannot be held responsible for what would happen to your data
without professional supervision). This is why we *really* recommend you take
a full backup of your system before you upgrade.</em>
<br />
<div class="muted"> NOTE: This version of Chamilo can only be used to upgrade from
smaller versions of Chamilo or Dok€os. For example, you cannot use the normal
upgrade scripts from Chamilo 1.9 to upgrade from Dok€os 2.0. If you need this,
please contact one of the Chamilo Association's official providers <providers@chamilo.org>)</div>
<p></p>
<h3>3.1 Upgrading from Chamilo 1.9.x (minor upgrade)</h3>
As this is only a minor version change from previous 1.9.* versions of Chamilo, the only thing you need to do is:
<ul>
<li> check that you haven't left any customised stylesheet or image <span class="muted">(if you have, make sure you keep a copy on the side*)</span></li>
<li> download the Chamilo 1.9 install package from the <a href="http://www.chamilo.org/download">Chamilo download page</a></li>
<li> unzip the new files of Chamilo 1.9 over the files of the older version (or unzip the files in one folder and then copy the files from there to the older version's directory)</li>
<li> edit the main/inc/conf/configuration.php file: at the end of the file, locate the previous version number (e.g. '1.9.2') and change it to this new version (e.g. '1.9.4')</li>
<li> you're done! No other upgrade procedure is required</li>
</ul>
<br />
<h3>3.2 Upgrading from Chamilo 1.8.x</h3>
<ul>
<li> check that you haven't left any customised stylesheet or image <span class="muted">(if you have, make sure you keep a copy on the side*)</span></li>
<li> download the Chamilo 1.9 install package from the <a href="http://www.chamilo.org/download">Chamilo download page</a></li>
<li> unzip the new files of Chamilo 1.9 over the files of the older version (or unzip the files in one folder and then copy the files from there to the older version's directory)</li>
<li> point your browser on your portal URL + main/install/</li>
<li> choose your language and click&nbsp;<span style="font-style: italic;">Upgrade from 1.8.x</span></li>
</ul>
<br />
<h3>3.3 Upgrading from Dok€os 1.8.x</h3>
<em>If you upgrade from Dok€os 1.8.x</em> :&nbsp;
<ul>
<li> check that you haven't left any customised stylesheet or image <span class="muted">(if you have, make sure you keep a copy on the side*)</span></li>
<li> download the Chamilo 1.9 install package from the <a href="http://www.chamilo.org/download">Chamilo download page</a></li>
<li> unzip the new files of Chamilo 1.9 over the files of the older version (or unzip the files in one folder and then copy the files from there to the older version's directory)</li>
<li> point your browser on your portal URL + main/install/</li>
<li> choose your language and click&nbsp;<span style="font-style: italic;">Upgrade from 1.8.x</span></li>
</ul>
A bunch of Chamilo administrators have reported minor issues with the migration between versions considerably apart (like from Dok€os to Chamilo).
This might include loosing some assignments or forum posts. To avoid any ugly effect on your users, we recommend you first establish a checklist
of all the content that is critical to you, and that you keep a working copy of your previous site on the side. This way, it will be easier to
manage the transition by letting your users get access to their contents from the previous site and making it easier for you to compare the two.
If you are experiencing difficulties, consider asking for help from a PHP developer or hiring an <a href="http://www.chamilo.org/en/providers" target="_blank">official Chamilo provider</a>. They will make sure
you get the best our of your Chamilo migration.
<br />
<span class="muted">* Styles and images are located in the main/css or main/img
directories. You can still recover them from your backup if you have made it.
Any modified style or image that uses the default style/image name will be
overwritten by the next step. To avoid loosing your customisations, always
ensure you copy the styles/images under a new name and use and modify the
copy, not the original. The original will always be overwritten by newer
versions. In Dok€os 1.8.5, we have changed the name of several CSS themes.
Backwards compatibility is ensured by the fact that an upgrade only adds the
new themes, but you should try and use these new themes rather than sticking
to the old ones which will be deprecated shortly (not maintained).</span>
<br />
<p></p>
<h3>3.4 Upgrading from Dok€os 1.6.x</h3>
<em>If you upgrade from a lower version of Dok€os (1.6.x)</em>, the first
and most important thing to do is to *move* your current directory to another
place.<br />
An easy way to do that is to create a subdirectory called "old_version"
in your current Chamilo/Dok€os directory and move everything in there using a
simple "move" command (i.e. under Linux: mkdir old_version; mv *
old_verion/), then make the old_version/ directory writeable by the web
server so that courses/ and upload/ directories can be moved from the
old to the new installation.<br />
<br />
The complete process is as follow:
<ul>
<li> move the current Dok€os directory contents to a subdirectory called
<em>old_version</em> and make it writeable by the web server. This
is important to allow the move of the courses/ and upload/ directories
to the new install</li>
<li> download the Chamilo 1.9 install package from the
<a href="http://www.chamilo.org/download">Chamilo download page</a></li>
<li> unzip the new files of Chamilo 1.9 in the main Chamilo/Dok€os directory. The
new directory <em>main</em> should be located directly inside your
Chamilo/Dok€os root folder</li>
<li> point your browser on your portal URL</li>
<li> choose your language and click&nbsp;<span style="font-style: italic;">Upgrade from 1.6.x</span> and confirm the
current directory of the old version</li>
</ul>
<br />
<p class="muted"> NOTE: The upgrade from 1.6.x to 1.8.x implies a revision of
the customised graphics and styles. The new version uses a complete new
set of icons and styles, which means the ones from version 1.6 cannot be
simply reused. The good news is the version 1.8.x allows you to create
your own style in a separate css folder, that you can then reuse through
all the 1.8.x versions
</p>
<p>
<b>WARNING:</b><br />
Do not delete the previous Chamilo/Dok€os installation directory before installing
the new one. When the update is successfully finished, you can remove
the old path.</p>
<p class="muted">
<b>NOTE:</b><br />
Do not modify the home_*.html files directly. Instead,
choose "Configure the homepage" in the Chamilo administration section.</p>
<p></p>
<h3>3.5 In both last cases</h3>
The following directories need to be readable, writeable and executable for the web server:
<ul>
<li>chamilo/config</li>
<li>chamilo/data</li>
<li>chamilo/logs</li>
<li>chamilo/temp</li>
<li>chamilo/main/default_course_document/</li>
</ul>
On Linux, Mac OS X and BSD operating systems you can quick-fix this using the
<em>chmod 0777</em> command, but if you are unsure, we recommend you seek advice for
your own OS on <a href="http://www.chamilo.org/forum">our forum</a>.
In Windows, you may need to check the properties of the folders.
<p></p>
<h3>3.6 Quick-upgrade from 1.8.x guide for Linux</h3>
The following quick-upgrade guide assumes that:
<ul>
<li>the Chamilo database username (for MySQL) is "chamilo_db_user" and your login is "chamilo_user"</li>
<li>the chamilo installation is currently in /var/www/chamilo/ and it has 0777 permissions (which is bad, we know, but you'll fix it)</li>
<li>your portal's URL is http://www.portalurl.com/</li>
</ul>
<br />
On the command-line, type:
<ul>
<li>cd /tmp</li>
<li>mysqldump -u chamilo_db_user -p --all-databases --result-file=/home/chamilo_user/chamilo_old.sql</li>
<li>cp -ra /var/www/chamilo /home/chamilo_user/backup_chamilo</li>
<li>mkdir /var/www/chamilo/old_version</li>
<li>mv /var/www/chamilo/* /var/www/chamilo/old_version/</li>
<li>chmod -R 0777 /var/www/chamilo/old_version/</li>
<li>wget http://chamilo.googlecode.com/files/chamilo-1.9.tar.gz</li>
<li>tar zxvf chamilo-1.9.tar.gz</li>
<li>sudo cp -ra chamilo-1.9/* /var/www/chamilo/</li>
<li>rm chamilo-1.9.tar.gz</li>
<li>sudo rm -r chamilo-1.9/</li>
</ul>
<br />
Then:
<ul>
<li>Direct your browser to http://www.portalurl.com/main/install/</li>
<li>Proceed with the installation</li>
<li>Review the directories permissions</li>
</ul>
<p></p>
<p></p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="4._Troubleshooting"></a>4. Troubleshooting</h2>
<p>If you have&nbsp;problems, go to the <a href="http://www.chamilo.org">Chamilo website</a> and ask a question on the
<a href="http://www.chamilo.forum">support forum</a>. Please read the previous messages first to see if there is
already an answer to your question.</p>
<h2></h2>
<hr style="width: 100%; height: 2px;" />
<h2><a name="5._Administration_section"></a>5. Administration section</h2>
<p>To access the Chamilo administration section, open browser,
go to your Chamilo adress and log in with the admin user.
Then you will see a "Platform admin section" link in the header of the
web page. There you can manage users, courses, sessions, portal look
and feel, homepage content, course categories etc.&nbsp;</p>
<p></p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="6._LDAP"></a>6. LDAP</h2>
<p>
<i>This part is optional, only organisations with an LDAP server will need to read this.</i><br />
An LDAP module is already provided in Chamilo, but it has to be configured to make it work.</p>
<h3><b>Compiling</b></h3>
<p>
Linux servers: It's possible that you have to recompile php with ldap support.
Newer distributions also allow downloading rpms for additional packages.</p>
<h3><b>Activating LDAP in Chamilo</b></h3>
<p class="muted">Note: The LDAP mechanism has been changed in 1.9. As a result, some of the following information might not be correct. Please check
the configuration settings inside Chamilo to learn the details.</p>
<p>
In [Chamilo folder]/main/inc/conf/configuration.conf.php, around line 93, you'll find settings like the following: <br />
// -> Uncomment the two lines below to activate LDAP AND edit main/inc/conf/auth.conf.php for configuration<br />
// $extAuthSource["extldap"]["login"] = $_configuration['root_sys'].$_configuration['code_append']."auth/external_login/login.ldap.php";<br />
// $extAuthSource["extldap"]["newUser"] = $_configuration['root_sys'].$_configuration['code_append']."auth/external_login/newUser.ldap.php";<br />
<br />
remove the // from the last two lines to activate LDAP.<br />
</p>
<h3><b>Settings</b></h3>
<p>
Ask the LDAP server admin for the settings:</p>
<ul>
<li>ldap server name</li>
<li>ldap server port (usually 389)</li>
<li>ldap dc</li>
</ul>
Since 1.8.5, you have to change the LDAP settings inside the "Portal
administration" panel, under "Chamilo configuration settings", section
"LDAP".
<br />
As an example, you should find the following kind of values:<br />
LDAP main server's address: "myldapserver.com"; // your ldap server<br />
LDAP main server's port: 389; // your ldap server's port number<br />
LDAP domain: "dc=xx, dc=yy, dc=zz"; //domain<br />
<br />
<h3><b>Teacher/student status</b></h3>
<p>
By default, Chamilo will check if the "employeenumber" field has a value. If it has, then Chamilo will
consider this user as being a teacher.<br />
If you want to change this behaviour, you can edit main/auth/ldap/authldap.php, function ldap_put_user_info_locally(),
and change the <em>if (empty($info_array[$tutor_field]))</em> condition to whatever suits you.<br />
You can also remove this check by removing the condition and leaving only the <em>$status = STUDENT;</em> line.</p>
<h3><b>Protected LDAP servers</b></h3>
<p>
Some LDAP servers do not support anonymous use of the directory services.<br />
In this case, you should fill in the appropriate fields in the
administration panel (e.g. "manager" and "mypassword") and Chamilo will
try to authenticate using these, or fall back to anonymous mode before
giving up.</p>
<h3>LDAP import into sessions</h3>
<p>There is a new set of scripts now that allow you to insert users
from LDAP directly into a Chamilo session. This, however, relies on a
set of static choices in the LDAP contact attributes.<br />
The fields used intensively by the Chamlio module are:<br />
</p>
<ul>
<li>uid, which is matched to the username in Chamilo</li>
<li>userPassword, which is matched to the user password, although
this part will only work for non-encrypted passwords for now, but it
shouldn't be necessary if using the LDAP server as authentication</li>
<li>ou should end with the year of the person registration or any
criteria you will use to filter users, so that they can be retrieved on
that criteria</li>
<li>sn is used as the lastname field in Chamilo</li>
<li>givenName is used as the firstname field in Chamilo</li>
<li>mail is used as the email field in Chamilo</li>
</ul>
<hr style="width: 100%; height: 2px;" />
<h2><a name="7._Mathematical_formulas"></a>7. Mathematical formulas with LaTeX</h2>
<i>This part is optional, only organisations planning to use mathematical formulas inside the online editor might want to read this.</i><br /><br />
You can enable mathematical equations writing inside the Chamilo online editor (FCKEditor) by applying the following steps:
<ul>
<li>1. Configure your Apache installation to add a cgi-bin directory that contains a symbolic link to the mimetex.cgi in <i>chamilo/main/inc/lib/mimetex/</i> (*see below, step 4)</li>
<li>2. Reload your Apache configuration</li>
<li>3. Edit the online editor's configuration file <i>chamilo/main/inc/lib/fckeditor/myconfig.php</i> and</li>
<ul>
<li>3.1. Enable the mimetex plugin, find the line //$config['LoadPlugin'][] = 'mimetex'; and modify it to be: <b>$config['LoadPlugin'][] = 'mimetex';</b> (remove the double slash)</li>
<li>3.2. The additional settings <b>$config['MimetexExecutableInstalled']</b> , <b>$config['MimetexExecutableDetectionMethod']</b>
and <b>$config['MimetexExecutableDetectionTimeout']</b> are configured for best probability of automatic detection of the installed on the server file <i>mimetex.cgi</i> or <i>mimetex.exe</i>.
In rare cases these options might need to be twicked, see the acccompanying comments about these options within the file <i>myconfig.php</i></li>
<li>3.3. Once the plugin has been activated, almost in all toolbars the corresponding button appears.
If you need to edit some toolbars, see the configuration files (php) within the directory <i>chamilo/main/inc/lib/fckeditor/toolbars/</i> .
Here is an example:
<div class="code">$config['ToolbarSets']['Normal'] = array(<br /> &nbsp;&nbsp;array('FitWindow','Bold','Image','Link','PasteWord','MP3',<b>'mimetex'</b>,'Table','Subscript','Superscript','ShowBlocks')<br />);</div>
The item <b>'mimetex'</b> represents the button, you may add it to or remove it from any toolbar.<br /><br />
</li>
</ul>
<li>4. To install mimetex executable file, make these changes:
<p>Add the corresponding cgi-bin directory to your Apache configuration could be done, in Apache 2, like this:</p>
<div class="code">
ScriptAlias /cgi-bin/ /var/www/cgi-bin/<br />
&lt;Directory "/var/www/cgi-bin"&gt;<br />
&nbsp;&nbsp;AllowOverride None<br />
&nbsp;&nbsp;Options ExecCGI -MultiViews +SymLinksIfOwnerMatch<br />
&nbsp;&nbsp;Order allow,deny<br />
&nbsp;&nbsp;Allow from all<br />
&lt;/Directory&gt;<br />
</div>
<p>Adding a symbolic link can be done, under Windows, by creating a
shortcut to the mimetex.exe file from the cgi-bin directory, or under
Linux by issuing the following command:</p>
<div class="code">
<p>ln -s /var/www/chamilo/main/inc/lib/mimetex/mimetex.cgi /var/www/cgi-bin/mimetex.cgi</p>
</div>
<p>If you are reluctant to modify your Apache configuration, alternately you may do at step 4 the following:
copy mimetex.exe (for windows) or mimetex.cgi (for linux) from <i>chamilo/main/inc/lib/mimetex/</i> directory to your <i>cgi-bin/</i></p>
</li>
<li>5. Make sure that the file mimetex.cgi (or mimetex.exe) has right to be executed by the web-server process. For example, on a Ubuntu Linux system you may write a command like the following:
<div class="code">
sudo chmod a+x mimetex.cgi
</div>
</li>
<li>6. Make sure that the file mimetex.cgi (or mimetex.exe) has been uploaded in <b>BINARY</b> format.
This is another common problem; the fix is just to re-upload the file in ASCII format.
You'll need to consult your FTP program's documentation to figure out how to switch modes.
BINARY mode is used for non-text items, such as executables (*.exe), zip files (*.zip), image files (*.jpg, *.gif) and the like.
ASCII mode needs to be used for text only documents, which includes *.txt, *.cgi, *.pl *.css, *.html, etc.
<br />
You can also try to re upload the mimetex file using the "Upload file" in the "Filemanager" tool in CPanel/Plesk
</li>
</ul>
<p>As a result of this procedure, a new button becomes available in your Chamilo online editor, that gives you possibility
to insert mathematical formulas into your documents.</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="8._ASCIIMathML_mathematical_formulas"></a>8. Mathematical formulas with ASCIIMathML</h2>
<p>Mathematical formulas may be rendered on web-pages using the script ASCIIMathML.js (a customized version for Chamilo). For more information about this script
and about the ASCIIMath formula syntax see <a href="http://www1.chapman.edu/~jipsen/mathml/asciimath.html">http://www1.chapman.edu/~jipsen/mathml/asciimath.html</a>
and <a href="http://dlippman.imathas.com/asciimathtex/AMT.html">http://dlippman.imathas.com/asciimathtex/AMT.html</a>.</p>
<p>For writing ASCIIMath formulas in documents, a correspondent plugin for the online editor should be activated. For doing this,
see the platform administration section and open the page "Administration &gt; Configuration settings &gt; Editor".
Enable the setting <strong>"ASCIIMathML mathematical editor"</strong>.</p>
<p>Inside documents, the script ASCIIMathML.js renders mathematical formulas in two altrnative ways:</p>
<ul>
<li>By translation ASCIIMath formula notation into MathML code. MathML standard currently is supported by the following browsers:
<ul>
<li>Mozilla Firefox, you may consider installing STIX fonts (<a href="http://www.stixfonts.org">http://www.stixfonts.org</a>) on your client machines for nice looking formulas</li>
<li>Internet Explorer 6 or higher with the add-on MathPlayer 2.0 or higher (<a href="http://www.dessci.com/en/products/mathplayer">http://www.dessci.com/en/products/mathplayer</a>)</li>
<li>Opera 9.5 or higher</li>
</ul>
</li>
<li>For browser that do not support MathML - by translation ASCIIMath formula notation into TeX notation and passing it to
an external service. The external service produces and returns an image that contains the formula. This way is so called
"image-based fallback".
</li>
</ul>
<p>For providing <strong>image-based fallback</strong> in a production system, you should pick up and install on your server software for TeX rendering, such as:</p>
<ul>
<li>mimeTeX - <a href="http://www.forkosh.dreamhost.com/source_mimetex.html">http://www.forkosh.dreamhost.com/source_mimetex.html</a>.
See <a href="#7._Mathematical_formulas">"7. Mathematical formulas with LaTeX"</a> on how to install the mimetex executable file on your server</li>
<li>mathTeX - <a href="http://www.forkosh.com/mathtex.html">http://www.forkosh.com/mathtex.html</a>. Browse the site for installation instructions</li>
</ul>
<p>As an alternative, you may try to use some public services for TeX rendering, such as:</p>
<ul>
<li>MathTran - <a href="http://www.mathtran.org">http://www.mathtran.org</a></li>
<li>Google Chart Tools - <a href="http://code.google.com/apis/charttools">http://code.google.com/apis/charttools</a></li>
</ul>
<p>Open with a text editor the file <strong>.../chamilo/main/inc/lib/asciimath/ASCIIMathML.js</strong>.
Find somewhere at the beginning the line that initializes the variable <strong>AMTcgiloc</strong>.
You may need to alter the setting to be for example:</p>
<ul>
<li><div class="code">var AMTcgiloc = "http://mychamiloserver.org/cgi-bin/mimetex.cgi";</div></li>
<li><div class="code">var AMTcgiloc = "http://mychamiloserver.org/cgi-bin/mathtex.cgi";</div></li>
<li><div class="code">var AMTcgiloc = "http://www.mathtran.org/cgi-bin/mathtran?tex=";</div></li>
<li><div class="code">var AMTcgiloc = "http://chart.apis.google.com/chart?cht=tx&amp;chs=1x0&amp;chl=";</div></li>
<li>... or something else</li>
</ul>
<p>For testing how the variable <strong>AMTcgiloc</strong> may be set, there are some examples (as comments) inside the script.</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="9._WIRIS_mathematical_formulas"></a>9. Mathematical formulas with WIRIS</h2>
<p>Installing this plugin you get WIRIS editor and WIRIS CAS. <br/>
This activation will not be completed unless you have previously downloaded the <a href="http://www.wiris.com/plugins/editors/download?filter=fckeditor" target="_blank">PHP plugin for FCKeditor WIRIS</a> and unzipped its contents into the main/inc/lib/fckeditor/editor/plugins/fckeditor_wiris/ directory. <br/>This is necessary because Wiris is proprietary software and its services are <a href="http://www.wiris.com/store/who-pays" target="_blank">commercial</a>. To make adjustments to the plugin, edit configuration.ini file or replace his content by configuration.ini.default Chamilo file.</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="10._Xapian_fulltext_indexing"></a>Full-text indexation with Xapian</h2>
<p>
<em>Note</em>: This step will require a dedicated server or a virtual dedicated server as the packages involved are not available on most shared hosting solutions.<br />
On Debian or Ubuntu 10.04 and superior, you will simply need to install the php5-xapian package and restart your web server:
<pre>
sudo apt-get install php5-xapian
sudo /etc/init.d/apache2 restart
</pre>
Then go to your administration page -&gt; Configuration settings -&gt; Search
and enable the search tool. Follow the recommendations on the page to get the
complete indexing suite installed. Once you're done, all documents you import
into your Chamilo portal in a recognized format will be indexed and searchable.
Chamilo Administrators training (which you can ask any <a href="http://www.chamilo.org/en/providers">Chamilo's Official
Provider</a> for) include a full review of the full-text search feature.
</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="11._Chamilo_rapid_ppt_conversion"></a>Chamilo Rapid - PPT conversion system</h2>
<p>
<em>Note</em>: This step will require a dedicated server or a virtual dedicated server as the packages involved are not available on most shared hosting solutions.<br />
On Debian or Ubuntu 11.10 and superior, install LibreOffice.org v3 and start it as a headless server:
<pre>
sudo apt-get install libreoffice
sudo soffice "--accept=socket,host=127.0.0.1,port=2002,tcpNoDelay=1;urp;" --headless --nodefault --nofirststartwizard --nolockcheck --nologo --norestore
</pre>
Then go to your administration page -&gt; <i>Chamilo Rapid</i> and set the host to "localhost" and the port to "2002". Save. Go to your course, learning path tool and see the new icon appeared. Import your PPT. This should work.
<em>Note</em>: Sometimes, this doesn't work out so easily. You can probably ask for the assistance of any system administrator around with a bit of Java and PHP experience, or you can always ask one of the Chamilo's Official Providers for assistance (ask for a guaranteed commercial contract).
</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="12._Setting_cron_up"></a>Setting chronological tasks</h2>
<p>
Since Chamilo 1.8.8, a few tasks need to be executed regularly in order to get
the best out of your server resources. One of such tasks (and the only one
around at the time of Chamilo 1.8.8) is the sending of internal messaging
notifications by e-mail, i.e. when you receive an e-mail from another person or
from a group inside the internal messaging system of Chamilo, if all e-mails are
sent immediately, then you might not have the chance to receive them at your
pace, once a day or even once a week. For cases like this you, as a Chamilo
administrator, should setup a cron process on the server to check the queue of
e-mails and send is timely.</p>
<p>
Setting up a cron task is easy and there are several ways to do it. We recommend
you have a look at the <a href="http://drupal.org/cron">Drupal documentation
for setting up cron</a> and define your own cron process as:
<pre>
35 * * * * wget -O - -q -t 1 http://campus.example.com/main/cron/run.php
</pre>
Make sure you have a look into run.php as maybe you want to change a few
settings there.
</p>
<hr style="width: 100%; height: 2px;" />
<h2><a name="13._Changing_language_names_order"></a>Changing the language's firstname/lastname order</h2>
<p>
As Chamilo becomes more popular and crosses many borders now, it frequently happens that administrators want to re-order the firstname and lastname fields in tables, and also on which field it is sorted first.<br/><br />
This can easily be modified by editing the main/inc/lib/internationalization_database/name_order_conventions.php file, finding your language and changing the fields. It is pretty self-explanatory and looks like this:<br />
<pre>'simpl_chinese' => array( 'format' => 'title last_name first_name', 'sort_by' => 'last_name' ), // Eastern order</pre><br />
Feel free to change this to<br />
<pre>'simpl_chinese' => array( 'format' => 'title first_name lastname', 'sort_by' => 'last_name' ), // Eastern order</pre><br />
for example. The effect should be immediate.
</p>
<hr style="width: 100%; height: 2px;" />
<p>
<br />
<br />
Contact address<br />
Mail: info@chamilo.org<br />
<br />
</p>
<hr />
</div>
<hr />
<a href="http://validator.w3.org/check?uri=referer"><img src="http://www.w3.org/Icons/valid-xhtml10-blue" alt="Valid XHTML 1.0 Transitional" style="margin: 1em; float: right;" height="31" width="88" /></a>
<a href="http://jigsaw.w3.org/css-validator/">
<img src="http://jigsaw.w3.org/css-validator/images/vcss-blue" style="margin: 1em; float: right;" alt="Valid CSS" />
</a>
</body>
</html>