Skip to content

Commit 2912c81

Browse files
committed
Merge branch 'master' of github.com:chamilo/chamilo-lms
2 parents bb80616 + 843debe commit 2912c81

File tree

3 files changed

+22602
-9991
lines changed

3 files changed

+22602
-9991
lines changed

public/documentation/installation_guide.html

Lines changed: 73 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ <h1>Chamilo 2 installation guide</h1>
1010
<p>
1111
This is the official Chamilo installation guide for version 2+.
1212
</p>
13-
<h2>Requirements</h2>
13+
<h2>1. Requirements</h2>
1414
<a id="requirements" class="anchor"></a>
1515

1616
This version of Chamilo requires the following software stack.
@@ -44,22 +44,22 @@ <h2>Requirements</h2>
4444
<li>redis (optional)</li>
4545
<li>xapian (optional)</li>
4646
</ul>
47-
<h2>Web-panel installation</h2>
47+
<h2>2. Web-panel installation</h2>
4848
<a id="web-install" class="anchor"></a>
49-
<h3>Database</h3>
49+
<h3>2.1. Database</h3>
5050
<a id="web-install-db" class="anchor"></a>
5151

5252
Make sure you have a database available with full permissions.<br>
5353
Do not share that database with another application as Chamilo might need to create
5454
a table that has the same name as a table in the other application.
5555

56-
<h3>Virtual host</h3>
56+
<h3>2.2. Virtual host</h3>
5757
<a id="web-install-vhost" class="anchor"></a>
5858
Define a new virtual host/subdomain name you will use for Chamilo (Chamilo 2 does *not* work as a sub-folder of an existing website, you need a subdomain like "elearning.yourdomain.com").<br>
5959
Upload and/or unzip your Chamilo files inside your web folder (usually inside a folder called "public_html/").<br>
6060
Configure a virtual host pointing at the "public" directory inside your Chamilo directory. For example, this could be "/home/elearning.yourdomain.com/public_html/chamilo2/public/".<br>
6161

62-
<h3>Files permissions</h3>
62+
<h3>2.3. Files permissions</h3>
6363
<a id="web-install-permissions" class="anchor"></a>
6464
Make sure the following files and folders are writeable by the web server. Set permissions to 0770 for example:
6565
<ul>
@@ -74,7 +74,7 @@ <h3>Files permissions</h3>
7474
("/home/elearning.yourdomain.com/public_html/chamilo2/"). If you do the whole folder,
7575
don't forget to write down the permissions it had initially, and return it to its original
7676
permissions when the installation is over.
77-
<h3>PHP settings</h3>
77+
<h3>2.4. PHP settings</h3>
7878
<a id="web-install-php" class="anchor"></a>
7979

8080
Some PHP settings are recommended, but the default values should be enough to get you started.<br>
@@ -89,20 +89,19 @@ <h3>PHP settings</h3>
8989
<li><a href="https://php.net/manual/ini.core.php#ini.post-max-size">post_max_size</a> >100M</li>
9090
<li><a href="https://www.php.net/manual/en/ini.core.php#ini.memory-limit">memory_limit</a> >128M</li>
9191
</ul>
92-
<h3>Installation wizard</h3>
92+
<h3>2.5. Installation wizard</h3>
9393
<a id="web-install-wizard" class="anchor"></a>
9494
You are ready to go. Open your browser on your subdomain (elearning.yourdomain.com in the example above), keep your database credentials at hand, and let the Chamilo installer guide you.
9595

96-
<h3>Sessions and Redis</h3>
96+
<h3>2.6. Sessions and Redis</h3>
9797
<a id="web-install-sessions" class="anchor"></a>
9898
In this beta version, there are known issues with sessions not getting updated fast enough, which can be solved (temporarily) by using a Redis server. Check the command line instructions for more about this. This is a temporary situation that we expect to fix before the stable release.
9999

100-
<h2>Command line installation</h2>
100+
<h2>3. Command line installation</h2>
101101
<a id="cli-install" class="anchor"></a>
102102

103-
<h3>Software stack</h3>
103+
<h3>3.1. Software stack</h3>
104104
<a id="cli-install-stack" class="anchor"></a>
105-
106105
<p>Assuming you are using a dedicated Ubuntu 24.04 LTS, these commands should help you have the software stack installed in a breeze. Otherwise, please review the requirements above and make sure they are met before moving on to the next section.</p>
107106
<pre>
108107
sudo -s
@@ -124,9 +123,8 @@ <h3>Software stack</h3>
124123
# give a MariaDB root password twice and answer the default "Y" to anything else. The root password is *not* the one you gave above here.
125124
</pre>
126125

127-
<h3>Database</h3>
126+
<h3>3.2. Database</h3>
128127
<a id="cli-install-db" class="anchor"></a>
129-
130128
<p>You will need a database user with privilege to fully use (and optionally create) a database.<br>
131129
Although progress has been made to support multiple database management systems, Chamilo
132130
currently only supports MariaDB and MySQL.<br>
@@ -143,7 +141,7 @@ <h3>Database</h3>
143141
<li>[db-host] is the name of the database server (use <em>localhost</em> when using the same machine for web server and database server - if you use a hosted service, your hosting provider will usually give you this name somewhere)</li>
144142
<li>[db-password] is the password this user will use to connect to this database on this host. Use common sense to not make it too easy to guess (use special characters, lowercase and uppercase, numbers, and a length of *at least* 8 characters)</li>
145143
</ul>
146-
<h3>Web server</h3>
144+
<h3>3.3. Web server</h3>
147145
<a id="cli-install-httpd" class="anchor"></a>
148146
Chamilo 2+ only requires a working web server setup to work. You can run it on localhost with the default installation of any web server, provided you configure your DocumentRoot as the path pointing to Chamilo's <em>public/</em> subfolder.<br>
149147
Here is an example Apache vhost configuration file for an installation on the http://my.chamilo.local/ URL (replace all values between brackets, including the brackets, to your custom values).<br>
@@ -179,7 +177,7 @@ <h3>Web server</h3>
179177
<pre>
180178
a2ensite [my.chamilo.local]
181179
systemctl restart apache2</pre>
182-
<h3>Files permissions</h3>
180+
<h3>3.4. Files permissions</h3>
183181
<a id="cli-install-permissions" class="anchor"></a>
184182
Make sure the following files and folders are writeable by the web server. Set permissions to 0770 for example:
185183
<ul>
@@ -194,74 +192,73 @@ <h3>Files permissions</h3>
194192

195193
Both .env and config/ should be changed back to less permissive permissions after the installation is over.
196194

197-
<h3>PHP settings</h3>
195+
<h3>3.5. PHP settings</h3>
198196
<a id="cli-install-php" class="anchor"></a>
199197
Some PHP settings are recommended, but the default values should be enough to get you started.<br>
200198
See vhost config's "php_value" section above for details.
201199

202-
<h3>Installation wizard</h3>
200+
<h3>3.6. Installation wizard</h3>
203201
<a id="cli-install-wizard" class="anchor"></a>
204202
You should now be able to direct your browser to your URL (e.g. <em>[http://my.chamilo.local]</em>).<br>
205203
Chamilo will pick it up from there and offer the installation wizard to help guide you through the rest of the process.
206204

207-
<h2>Command line upgrade from 1.11.*</h2>
205+
<h2>4. Command line upgrade from 1.11.*</h2>
208206
<a id="cli-upgrade" class="anchor"></a>
209-
210-
<h3>Database</h3>
207+
<h3>4.1. Database</h3>
211208
<a id="cli-upgrade-db" class="anchor"></a>
212209
Before you start, it is *critical* to delete the <em>version</em> table from your Chamilo 1.11.* database.
213210
Failure to do this will make the command line upgrade fail immediately after starting.
214211
The <em>version</em> table is not necessary for Chamilo 1.11.* to work, so don't leave it there.
215212

216-
<h3>Files</h3>
213+
<h3>4.2. Files</h3>
217214
<a id="cli-upgrade-files" class="anchor"></a>
218215
The files from Chamilo 1.11.* will be used as source but they will be copied and rearranged
219216
in the new Chamilo 2 installation, so you will have to indicate a source for the files to the (web or CLI) installer.<br>
220217
Note the extra pages created in 1.11.x and stored under app/home/ are *not* migrated. They will need to be created again in Chamilo 2 using the "pages" feature.
221218

222-
<h3>PHP settings</h3>
219+
<h3>4.3. PHP settings</h3>
223220
<a id="cli-upgrade-php" class="anchor"></a>
224221
Make sure no setting is in the way of a command line upgrade.
225222
Limits such as memory_limit or max_execution_time should be
226223
vastly increased for the time of the upgrade.
227224

228-
<h3>E-mail settings</h3>
225+
<h3>4.4. E-mail settings</h3>
229226
<a id="cli-upgrade-email" class="anchor"></a>
230227
In Chamilo 1.11.*, the e-mail settings were stored in the app/config/mail.conf.php file.<br>
231228
This is *NOT* the case in Chamilo 2. Instead, the e-mail settings can be configured directly from the
232229
web panel (Administration &gt; Settings &gt; E-mail).<br>
233230
Those settings are *NOT* automatically migrated to the new format, so you will have to do it manually in the new, DSN, format. See settings page in your admin panel for more details.
234231

235-
<h3>Execution</h3>
232+
<h3>4.5. Execution</h3>
236233
<a id="cli-upgrade-exec" class="anchor"></a>
237234
// To be completed
238235

239-
<h2>Web panel upgrade from 1.11.*</h2>
236+
<h2>5. Web panel upgrade from 1.11.*</h2>
240237
<a id="web-upgrade" class="anchor"></a>
241238

242-
<h3>Database, Host, Permissions, Files and PHP settings</h3>
239+
<h3>5.1. Database, Host, Permissions, Files and PHP settings</h3>
243240
<a id="web-upgrade-all" class="anchor"></a>
244241
For all requirements previous to the installation wizard, see the command line upgrade instructions above.
245242
Note the installation folder for Chamilo 2 will be different from the installation folder from Chamilo 1, as explained in the "Files" section above.
246243

247-
<h3>Installation wizard</h3>
244+
<h3>5.2. Installation wizard</h3>
248245
<a id="web-upgrade-wizard" class="anchor"></a>
249246
On step 2 of the installation wizard, make sure you select "Upgrade from a previous version of Chamilo" and click "Continue".<br>
250247
Follow the wizard to complete the upgrade.<br>
251248
Please be aware that upgrading your system might take hours or even days, depending on the size and complexity of your database. Refer to the Chamilo forum or to official providers for help.
252249

253-
<h2>Installing on Windows</h2>
250+
<h2>6. Installing on Windows</h2>
254251
<a id="windows-install" class="anchor"></a>
255-
<h3>Introduction</h3>
252+
<h3>6.1. Introduction</h3>
256253
Although Chamilo does work on Windows, it is not officially supported due to the fact that
257254
we have limited testing capabilities for this operating system. The following instructions have been
258255
tested on a Windows 11 (desktop) machine with the WAMP application.
259256
We do not recommend using Windows for production environments.
260257

261-
<h3>Installation for validation or production</h3>
258+
<h3>6.2. Installation for validation or production</h3>
262259
<a id="windows-install-env" class="anchor"></a>
263260

264-
<h4>WampServer</h4>
261+
<h4>6.2.1. WampServer</h4>
265262
<a id="windows-install-wamp" class="anchor"></a>
266263
<a href="https://www.wampserver.com/">Download</a> and install WampServer (accept default options if in doubt).<br>
267264
Restart WampServer to make these changes effective.<br>
@@ -287,9 +284,9 @@ <h4>WampServer</h4>
287284
Note: If you use your Windows machine for development, you might
288285
get errors related to VisualC++. The error itself will point to
289286
wampserver.aviatechno.net, which seem to be a valid source to download a VisualC++ patch.
290-
We do not take responsibility about software from other sources. Do your own research.
287+
We do not take responsibility about software from other sources. Do your own research.<br><br>
291288

292-
<h4>Database</h4>
289+
<h4>6.2.2. Database</h4>
293290
<a id="windows-install-db" class="anchor"></a>
294291
Click on the WampServer icon in the status bar (bottom right) and select PhpMyAdmin.<br>
295292
Choose the MariaDB service and connect to the root user. Enter the root password you set during WampServer installation (probably still empty).<br></br>
@@ -298,17 +295,17 @@ <h4>Database</h4>
298295
We recommend setting a proper user and password for that specific database,
299296
but the root account should also be secured with a different password
300297
if you plan to expose this to the internet.<br>
301-
Click "Create".<br>
298+
Click "Create".<br><br>
302299

303-
<h4>Chamilo</h4>
300+
<h4>6.2.3. Chamilo</h4>
304301
<a id="windows-install-files" class="anchor"></a>
305302
Download the latest install-ready package available for version 2
306303
from <a href="https://github.com/chamilo/chamilo-lms/releases">https://github.com/chamilo/chamilo-lms/releases</a>.<br>
307304
Unzip the package in C:\wamp64\www\chamilo2.<br>
308305
Create a ".env" file at the root of the chamilo2 folder (C:\wamp64\www\chamilo2\.env).<br>
309-
If this is not a stable version package, edit the ".env.dist" file and set APP_ENV to "prod".<br>
306+
If this is not a stable version package, edit the ".env.dist" file and set APP_ENV to "prod".<br><br>
310307

311-
<h4>Apache</h4>
308+
<h4>6.2.4. Apache</h4>
312309
<a id="windows-install-apache" class="anchor"></a>
313310
Open the Apache configuration file at C:\wamp64\bin\apache\apache2.4.*\conf\extra\httpd-vhosts.conf.<br>
314311
Modify the contents of the file to something like this:<br>
@@ -324,7 +321,7 @@ <h4>Apache</h4>
324321
&lt;/VirtualHost&gt;
325322
</pre>
326323

327-
<h4>Installation wizard</h4>
324+
<h4>6.2.5. Installation wizard</h4>
328325
<a id="windows-install-wizard" class="anchor"></a>
329326
Open your browser on <a href="http://chamilo.local/">http://chamilo2.local</a>. The installation wizard should appear.<br>
330327
Follow the instructions to complete the installation.<br>
@@ -334,25 +331,25 @@ <h4>Installation wizard</h4>
334331
make sure you have properly configured your domain name first.
335332

336333

337-
<h3>Installation for developers</h3>
334+
<h3>6.3. Installation for developers</h3>
338335
<a id="windows-install-dev" class="anchor"></a>
339336
If you want to *develop* Chamilo, you will need still need to install
340337
WampServer as detailed above, but you will also need a few additional
341-
components to be able to prepare the package from Git.
338+
components to be able to prepare the package from Git.<br><br>
342339

343-
<h4>WampServer</h4>
340+
<h4>6.3.1. WampServer</h4>
344341
<a id="windows-install-dev-wamp" class="anchor"></a>
345-
See above.
342+
See above.<br><br>
346343

347-
<h4>Composer</h4>
344+
<h4>6.3.2. Composer</h4>
348345
<a id="windows-install-dev-composer" class="anchor"></a>
349346
<a href="https://getcomposer.org/download/">Download</a> and install
350347
Composer (accept default options if in doubt).<br>
351348
If the installation is correct, you should be able to run
352349
"composer -V" in a command prompt (PowerShell or CMD) and see the
353-
version of Composer appear (probably 2.x).
350+
version of Composer appear (probably 2.x).<br><br>
354351

355-
<h4>Node.js</h4>
352+
<h4>6.3.3. Node.js</h4>
356353
<a id="windows-install-dev-nodejs" class="anchor"></a>
357354
To install Node.js, you can use the official installer from
358355
<a href="https://nodejs.org/en/download/">https://nodejs.org/en/download/</a>
@@ -364,13 +361,13 @@ <h4>Node.js</h4>
364361
Then we need to install Yarn. In a command prompt *as administrator*,
365362
run "corepack enable".<br>
366363
Check the installation with "yarn --version", then
367-
run "corepack prepare yarn@stable --activate".<br>
364+
run "corepack prepare yarn@stable --activate".<br><br>
368365

369-
<h4>Database</h4>
366+
<h4>6.3.4. Database</h4>
370367
<a id="windows-install-dev-db" class="anchor"></a>
371-
See above.
368+
See above.<br><br>
372369

373-
<h4>Chamilo</h4>
370+
<h4>6.3.5. Chamilo</h4>
374371
<a id="windows-install-dev-chamilo" class="anchor"></a>
375372
In a PowerShell or CMD:<br>
376373
<pre>
@@ -383,20 +380,20 @@ <h4>Chamilo</h4>
383380
yarn dev
384381
</pre>
385382
Create a ".env" file at the root of the chamilo2 folder
386-
(C:\wamp64\www\chamilo2\.env).<br>
383+
(C:\wamp64\www\chamilo2\.env).<br><br>
387384

388-
<h4>Apache</h4>
385+
<h4>6.3.6. Apache</h4>
389386
<a id="windows-install-dev-apache" class="anchor"></a>
390-
See above.
387+
See above.<br><br>
391388

392-
<h4>Installation wizard</h4>
389+
<h4>6.3.7. Installation wizard</h4>
393390
<a id="windows-install-dev-wizard" class="anchor"></a>
394391
Open your browser on <a href="http://chamilo.local/">http://chamilo2.local</a>. The installation wizard should appear.<br>
395392
Follow the instructions to complete the installation.<br>
396393

397394
Note that it is difficult to change URLs later, so if you plan to publish this service online, make sure you have properly configured your domain name first.
398395

399-
<h3>Redis</h3>
396+
<h3>6.4. Redis</h3>
400397
<a id="windows-install-redis" class="anchor"></a>
401398
For better performance in the highly dynamic interfaces of Chamilo, you might
402399
want to install the PHP Redis extension from the official PHP website, for example (adapt PHP and Redis version numbers)
@@ -433,7 +430,28 @@ <h3>Redis</h3>
433430

434431
Restart the WampServer and you should be able to access Chamilo.
435432

436-
<h2>Help available</h2>
433+
<h2>7. Xapian text indexation</h2>
434+
435+
Xapian allows you to index texts and documents in Chamilo and search them using a full-text search engine.<br>
436+
However, installing Xapian is not trivial and requires a few manual steps.<br>
437+
This is probably not supported for Windows setups (untested), but it should work on Linux and macOS.<br>
438+
To install Xapian (a requirement to use the internal search engine), follow the instructions below.<br>
439+
<pre>
440+
sudo apt install libxapian-dev catdoc html2txt unrtf
441+
cd /tmp
442+
wget https://oligarchy.co.uk/xapian/1.4.25/xapian-bindings-1.4.25.tar.xz
443+
# use 1.4.25 because this matches the version of the libxapian-dev package on Ubuntu 25.04
444+
tar -xJf xapian-bindings-1.4.25.tar.xz
445+
cd xapian-bindings-1.4.25
446+
./configure
447+
make install
448+
</pre>
449+
This should make the Xapian extension available from Chamilo.<br>
450+
Next, go to Settings -&gt; Search -&gt; Enable, and follow the instructions there.<br>
451+
Once this is done, a checkbox will appear in several tools when uploading, creating or editing different elements, to ask you wether to index these or not.<br>
452+
Finally, a search box appears in the "My courses" page, allowing you to search for content through the whole platform.<br>
453+
454+
<h2>8. Help available</h2>
437455
<a id="install-help-channels" class="anchor"></a>
438456
If you are struggling with this guide, don't hesitate to ask for help on
439457
<a href="https://github.com/chamilo/chamilo-lms/discussions">our community forum.</a><br>

0 commit comments

Comments
 (0)