Skip to content

Commit 1efd30a

Browse files
committed
Documentation: Add partial IIS installation instructions (still missing working web.config file) - refs BT#21796
1 parent abe850f commit 1efd30a

File tree

1 file changed

+60
-19
lines changed

1 file changed

+60
-19
lines changed

public/documentation/installation_guide.html

Lines changed: 60 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -96,15 +96,15 @@ <h3>2.5. Installation wizard</h3>
9696
<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.
99-
99+
100100
<h3>2.7. Clean up</h3>h3>
101101
<a id="web-cleanup" class="anchor"></a>
102102
As recommended by the installer's last page, make sure you change permissions on the config/ dir and the .env file, and you delete the public/main/install/ folder.
103103
<pre>
104104
sudo chown -R root: config/ .env
105105
sudo rm -r public/main/install/
106106
</pre>
107-
107+
108108
<h2>3. Command line installation</h2>
109109
<a id="cli-install" class="anchor"></a>
110110

@@ -263,19 +263,19 @@ <h3>5.2. Installation wizard</h3>
263263
Follow the wizard to complete the upgrade.<br>
264264
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.
265265

266-
<h2>6. Installing on Windows</h2>
267-
<a id="windows-install" class="anchor"></a>
266+
<h2>6. Installing on Windows with WAMP</h2>
267+
<a id="windows-install-wamp" class="anchor"></a>
268268
<h3>6.1. Introduction</h3>
269269
Although Chamilo does work on Windows, it is not officially supported due to the fact that
270270
we have limited testing capabilities for this operating system. The following instructions have been
271271
tested on a Windows 11 (desktop) machine with the WAMP application.
272272
We do not recommend using Windows for production environments.
273273

274274
<h3>6.2. Installation for validation or production</h3>
275-
<a id="windows-install-env" class="anchor"></a>
275+
<a id="windows-install-wamp-env" class="anchor"></a>
276276

277277
<h4>6.2.1. WampServer</h4>
278-
<a id="windows-install-wamp" class="anchor"></a>
278+
<a id="windows-install-wamp-wamp" class="anchor"></a>
279279
<a href="https://www.wampserver.com/">Download</a> and install WampServer (accept default options if in doubt).<br>
280280
Restart WampServer to make these changes effective.<br>
281281
Open http://localhost/ in your browser. If the WampServer welcome screen with server configuration info appears, it means WampServer is working.<br>
@@ -303,7 +303,7 @@ <h4>6.2.1. WampServer</h4>
303303
We do not take responsibility about software from other sources. Do your own research.<br><br>
304304

305305
<h4>6.2.2. Database</h4>
306-
<a id="windows-install-db" class="anchor"></a>
306+
<a id="windows-install-wamp-db" class="anchor"></a>
307307
Click on the WampServer icon in the status bar (bottom right) and select PhpMyAdmin.<br>
308308
Choose the MariaDB service and connect to the root user. Enter the root password you set during WampServer installation (probably still empty).<br></br>
309309
In the "Databases" tab, prepare a new database with the name "chamilo2".<br></br>
@@ -314,15 +314,15 @@ <h4>6.2.2. Database</h4>
314314
Click "Create".<br><br>
315315

316316
<h4>6.2.3. Chamilo</h4>
317-
<a id="windows-install-files" class="anchor"></a>
317+
<a id="windows-install-wamp-files" class="anchor"></a>
318318
Download the latest install-ready package available for version 2
319319
from <a href="https://github.com/chamilo/chamilo-lms/releases">https://github.com/chamilo/chamilo-lms/releases</a>.<br>
320320
Unzip the package in C:\wamp64\www\chamilo2.<br>
321321
Create a ".env" file at the root of the chamilo2 folder (C:\wamp64\www\chamilo2\.env).<br>
322322
If this is not a stable version package, edit the ".env.dist" file and set APP_ENV to "prod".<br><br>
323323

324324
<h4>6.2.4. Apache</h4>
325-
<a id="windows-install-apache" class="anchor"></a>
325+
<a id="windows-install-wamp-apache" class="anchor"></a>
326326
Open the Apache configuration file at C:\wamp64\bin\apache\apache2.4.*\conf\extra\httpd-vhosts.conf.<br>
327327
Modify the contents of the file to something like this:<br>
328328
<pre>
@@ -338,7 +338,7 @@ <h4>6.2.4. Apache</h4>
338338
</pre>
339339

340340
<h4>6.2.5. Installation wizard</h4>
341-
<a id="windows-install-wizard" class="anchor"></a>
341+
<a id="windows-install-wamp-wizard" class="anchor"></a>
342342
Open your browser on <a href="http://chamilo.local/">http://chamilo2.local</a>. The installation wizard should appear.<br>
343343
Follow the instructions to complete the installation.<br>
344344

@@ -348,25 +348,25 @@ <h4>6.2.5. Installation wizard</h4>
348348

349349

350350
<h3>6.3. Installation for developers</h3>
351-
<a id="windows-install-dev" class="anchor"></a>
351+
<a id="windows-install-wamp-dev" class="anchor"></a>
352352
If you want to *develop* Chamilo, you will need still need to install
353353
WampServer as detailed above, but you will also need a few additional
354354
components to be able to prepare the package from Git.<br><br>
355355

356356
<h4>6.3.1. WampServer</h4>
357-
<a id="windows-install-dev-wamp" class="anchor"></a>
357+
<a id="windows-install-wamp-dev-wamp" class="anchor"></a>
358358
See above.<br><br>
359359

360360
<h4>6.3.2. Composer</h4>
361-
<a id="windows-install-dev-composer" class="anchor"></a>
361+
<a id="windows-install-wamp-dev-composer" class="anchor"></a>
362362
<a href="https://getcomposer.org/download/">Download</a> and install
363363
Composer (accept default options if in doubt).<br>
364364
If the installation is correct, you should be able to run
365365
"composer -V" in a command prompt (PowerShell or CMD) and see the
366366
version of Composer appear (probably 2.x).<br><br>
367367

368368
<h4>6.3.3. Node.js</h4>
369-
<a id="windows-install-dev-nodejs" class="anchor"></a>
369+
<a id="windows-install-wamp-dev-nodejs" class="anchor"></a>
370370
To install Node.js, you can use the official installer from
371371
<a href="https://nodejs.org/en/download/">https://nodejs.org/en/download/</a>
372372
using the .msi package.<br>
@@ -380,11 +380,11 @@ <h4>6.3.3. Node.js</h4>
380380
run "corepack prepare yarn@stable --activate".<br><br>
381381

382382
<h4>6.3.4. Database</h4>
383-
<a id="windows-install-dev-db" class="anchor"></a>
383+
<a id="windows-install-wamp-dev-db" class="anchor"></a>
384384
See above.<br><br>
385385

386386
<h4>6.3.5. Chamilo</h4>
387-
<a id="windows-install-dev-chamilo" class="anchor"></a>
387+
<a id="windows-install-wamp-dev-chamilo" class="anchor"></a>
388388
In a PowerShell or CMD:<br>
389389
<pre>
390390
cd C:\wamp64\www
@@ -399,17 +399,58 @@ <h4>6.3.5. Chamilo</h4>
399399
(C:\wamp64\www\chamilo2\.env).<br><br>
400400

401401
<h4>6.3.6. Apache</h4>
402-
<a id="windows-install-dev-apache" class="anchor"></a>
402+
<a id="windows-install-wamp-dev-apache" class="anchor"></a>
403403
See above.<br><br>
404404

405405
<h4>6.3.7. Installation wizard</h4>
406-
<a id="windows-install-dev-wizard" class="anchor"></a>
406+
<a id="windows-install-wamp-dev-wizard" class="anchor"></a>
407407
Open your browser on <a href="http://chamilo.local/">http://chamilo2.local</a>. The installation wizard should appear.<br>
408408
Follow the instructions to complete the installation.<br>
409409

410410
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.
411411

412-
<h3>6.4. Redis</h3>
412+
<h3>6.4. Windows install with IIS</h3>
413+
<a id="windows-install-iis" class="anchor"></a>
414+
For performance reasons, you might want to install Chamilo on Windows using IIS as a web server.<br>
415+
The procedure described below is experimental, so if you believe you can improve this, please open an issue on Github for us with the proposed changes.<br><br>
416+
417+
<h4>6.4.1. MariaDB</h4>
418+
<a id="windows-install-iis-db" class="anchor"></a>
419+
First install MariaDB from the official website (https://mariadb.org/download/) and follow the default installation options (Next, Next, Install).<br>
420+
Make sure you have a database Windows client at hand as we will have (preferrably) to define permissions for a Chamilo-specific user.<br>
421+
Once installed, open the database client and create a user through the interface or issuing the following query (adapted to your needs):<br>
422+
<pre>mariadb> GRANT ALL PRIVILEGES ON chamilo.* TO chamilo@localhost IDENTIFIED BY 'some-password';</pre>
423+
Exit the SQL client.<br><br>
424+
425+
<h4>6.4.2. IIS and URL Rewrite</h4>
426+
<a id="windows-install-iis-rewrite" class="anchor"></a>
427+
If you are working on a Windows server, you should have IIS installed already. If not, you can download it from the official website (https://www.iis.net/downloads).<br>
428+
With IIS, you will need the URL Rewrite module. You can download it from the official website (https://www.iis.net/downloads/microsoft/url-rewrite).<br>
429+
Once installed, you will need to restart IIS, close the network manager window if open, and possibly reboot the whole Windows machine for it to appear in the Site management (not the server management section).<br>
430+
431+
<h4>6.4.3. IIS, CGI and PHP</h4>
432+
<a id="windows-install-iis-php" class="anchor"></a>
433+
Once you have installed IIS and the URL Rewrite module, you will need to configure the CGI and PHP settings.<br>
434+
CGI is an IIS module to enable (it's already present but needs activating) in the server manager. Open the server manager, click Manage &gt; Add roles and features &gt; pass screens until "Server roles". Select "CGI" under "Web Server (IIS) &gt; Web Server &gt; Application Development, then confirm the installation.<br>
435+
Download PHP 8.3 for Windows from the official website (https://windows.php.net/download#php-8.3) (simple Zip version).<br>
436+
This might require (depending on your setup) to install the VC++ libraries in version 14, which come from VStudio v16 (between others). If you don't have them yet on the Windows Server, you can download them from here depending on your architecture: <a href="https://aka.ms/vs/16/release/VC_redist.x64.exe">x64</a> or <a href="https://aka.ms/vs/16/release/VC_redist.x86.exe">x86</a>.<br>
437+
Add PHP to the PATH environment variable (e.g. C:\php): Settings &gt; System &gt; About &gt; Advanced system settings &gt; Environment variables, then select "Path", click "Modify", click "New" and introduce "C:\PHP", then validate twice.<br>
438+
In the IIS manager window, when the server is selected and you click on the Mappings manager, click on the "Add module mapping..." in the right panel and make sure request path "*.php" is mapped to the FastCgiModule. If not, add it.<br>
439+
Find the C:\php\php.ini file (or any other place you might have given the PHP installer script to register to) and set (or wait for the install wizard to tell you) the settings suggested by Chamilo's install wizard. Between others, make sure the opcache section has <em>opcache.enable=1</em> *and* <em>opcache.memory_consumption=256</em> or any higher value so that OpCache can be used. Otherwise it is present but not used. Save the file.<br>
440+
441+
<h4>6.4.4. Chamilo</h4>
442+
<a id="windows-install-iis-chamilo" class="anchor"></a>
443+
Once you have installed IIS, the URL Rewrite module and PHP, you can download Chamilo from the official downloads page (https://github.com/chamilo/chamilo-lms/releases).<br>
444+
Unzip the package in the "wwwroot" folder of your IIS installation (e.g. C:\inetpub\wwwroot).<br>
445+
Chamilo 2+ need you to configure the web server so the root path is the "public/" folder of Chamilo.<br>
446+
Create an empty ".env" file at the root of the chamilo folder (e.g. C:\inetpub\wwwroot\chamilo\.env).<br>
447+
Change permissions so the web server user is able to write to var/, config/ and .env during the installation. These permissions can be removed later on, to the exception of var/ which has to remain writable by the webserver. These permissions need to be set in a way that the owner of the IIS service (possibly "System" or "IIS_IUSRS") can read and write to those files and folders, otherwise the installation script (which needs to write some files) will not be able to proceed.<br>
448+
After this, load the URL in your browser, as you have defined it in the ISS site configuration.<br>
449+
The Chamilo installation wizard should appear.<br>
450+
Follow the instructions to complete the installation.<br>
451+
452+
453+
<h3>6.5. Redis</h3>
413454
<a id="windows-install-redis" class="anchor"></a>
414455
For better performance in the highly dynamic interfaces of Chamilo, you might
415456
want to install the PHP Redis extension from the official PHP website, for example (adapt PHP and Redis version numbers)

0 commit comments

Comments
 (0)