Make sure you have a database available with full permissions.
Do not share that database with another application as Chamilo might need to create
a table that has the same name as a table in the other application.
<h3>Virtual host</h3>
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>
Upload and/or unzip your Chamilo files inside your web folder (usually inside a folder called "public_html/").<br>
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>
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.
In this alpha 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.
<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>
Setup a new user in your database system either through visual tools or directly in the terminal. If you have followed the command lines above, you can skip this.<br>
<li>[db-user] is the user that will have permissions to access this database</li>
<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>
<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>
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>
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>
It includes PHP settings which will only affect this vhost. If you prefer to set those PHP settings in php.ini, you are welcome to do so.<br>
We also assume you will be using a default Redis installation to manage sessions (see notes in the web panel install section).<br>
Assuming your web server user is <em>www-data</em>, you can do that quickly with the following from inside the Chamilo root directory (already done in first example commands list for Ubuntu):
If you are struggling with this guide, don't hesitate to ask for help on <ahref="https://github.com/chamilo/chamilo-lms/discussions">our community forum.</a><br>
If you have reasons to seek professional assistance and warranties, please contact <ahref="https://chamilo.org/providers">one of our official providers</a>. They contribute heavily to the project and will be able to help you out quickly and efficiently, for configurations from 10 to 1M users.<br>