installation_guide_fr_FR.html 60 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006
  1. <html lang="en">
  2. <head>
  3. <meta charset="utf-8" />
  4. <title>Guide d'installation de Chamilo</title>
  5. <link rel="stylesheet" href="../web/assets/bootstrap/dist/css/bootstrap.css" type="text/css" media="screen,projection" />
  6. <link rel="stylesheet" href="default.css" type="text/css" media="screen,projection" />
  7. <link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
  8. </head>
  9. <body>
  10. <nav class="navbar navbar-default navbar-fixed-top">
  11. <div class="container">
  12. <div class="navbar-header">
  13. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1">
  14. <span class="sr-only">Toggle navigation</span>
  15. <span class="icon-bar"></span>
  16. <span class="icon-bar"></span>
  17. <span class="icon-bar"></span>
  18. </button>
  19. <a class="navbar-brand" href="#">Chamilo - Documentation</a>
  20. </div>
  21. <div class="collapse navbar-collapse">
  22. <ul class="nav navbar-nav">
  23. <li class="active"><a href="index.html">Home</a></li>
  24. <li ><a href="readme.html">About</a></li>
  25. <li><a href="license.html">License</a></li>
  26. <li><a href="credits.html">Credits</a></li>
  27. <li ><a href="dependencies.html">Dependencies</a></li>
  28. <li><a href="changelog.html">Changelog</a></li>
  29. </ul>
  30. </div><!--/.nav-collapse -->
  31. </div>
  32. </nav>
  33. <div class="container">
  34. <h1>Guide d'installation de Chamilo LMS 1.11</h1>
  35. <p>Merci d'avoir téléchargé Chamilo</p>
  36. <ul>
  37. <li>Vous pouvez tester Chamilo LMS, en tnt que professeur, sans l'installer, sur <a href="http://campus.chamilo.org/?language=french">le campus libre de Chamilo</a></li>
  38. </ul>
  39. <p>Ce guide explique comment installer Chamilo LMS. Nous recommandons activement la lecture complète de ce guide avant de commencer l'installation.</p>
  40. <p>English: Get back to the <a href="installation_guide.html">English version of the installation guide</a>.</p>
  41. <p>Spanish: También puede leer <a href="installation_guide_es_ES.html">esta guía de instalación en español</a>.</p>
  42. <p>Italian: You can also read <a href="installation_guide_it_IT.html">this guide in Italian</a>.</p>
  43. <h2><b>Index</b></h2>
  44. <ol>
  45. <li><a href="#1._Pre-requisites">Prérequis</a></li>
  46. <li><a href="#2._Installation_of_Chamilo_LMS">Installation de Chamilo LMS</a></li>
  47. <li><a href="#3._Upgrade_from_a_previous_version_of">Upgrade depuis une version antérieure de Chamilo/Dok€os</a></li>
  48. <li><a href="#4._Troubleshooting">Problèmes</a></li>
  49. <li><a href="#5._Administration_section">La section d'administration</a></li>
  50. <li><a href="#6._LDAP">LDAP&nbsp;</a></li>
  51. <li><a href="#9._WIRIS_mathematical_formulas">Formules mathématiques avec WIRIS</a></li>
  52. <li><a href="#10._Xapian_fulltext_indexing">Indexation full-text avec Xapian</a></li>
  53. <li><a href="#11._Chamilo_rapid_ppt_conversion">Chamilo Rapid - système de conversion PPT</a></li>
  54. <li><a href="#12._Setting_cron_up">Configurer de tâches "chronologiques"</a></li>
  55. <li><a href="#13._Changing_language_names_order">Changer l'ordre des noms/prénoms par langue</a></li>
  56. <li><a href="#14._Improving_files_download">Améliorer le temps de téléchargement de fichiers</a></li>
  57. <li><a href="#15._Videoconference">Vidéo-conférence</a></li>
  58. <li><a href="#16._Rewrite">Configuration de la réécriture</a></li>
  59. </ol>
  60. <br />
  61. <hr style="width: 100%; height: 2px;" />
  62. <h2><a name="1._Pre-requisites"></a>1. Prérequis</h2>
  63. Chamilo peut être installé sous Windows, Linux, Max OS X et serveurs UNIX
  64. indifféremment. Cela dit, nous recommandons activement l'utilisation d'un
  65. serveur Linux pour sa flexibilité optimale, son facile contrôle à distance
  66. et sa capacité de redimensionnement. En particulier, nous recommandons la
  67. distribution Debian (ou sa petite soeur Ubuntu)<br />
  68. <br />
  69. Chamilo est un système de gestion de l'apprentissage (LMS) qui fonctionne
  70. principallement sur base d'un <span style="font-weight: bold;">serveur web (Apache 2.2+)</span>, de <span style="font-weight: bold;">MySQL 5.6+ ou de MariaDB 5+
  71. (5 ou 10)</span> et de <span style="font-weight: bold;">PHP 5.6, 7.1, 7.2 ou 7.3</span>. <br />
  72. <br />
  73. Tous ces éléments logiciels sont sous licence de logiciels libres et sont
  74. disponibles gratuitement.<br />
  75. <br />
  76. Pour faire fonctionner Chamilo <span style="font-weight: bold;">LMS</span> sur votre serveur,
  77. il est suggéré d'installer WAMP, LAMP ou MAMP (ou leurs composants
  78. individuellement):
  79. <ul>
  80. <li>Pour installer <span style="font-weight: bold;">WAMP</span> (AMP sous Windows), nous
  81. recommandons le paquet
  82. <a href="http://www.apachefriends.org/en/xampp.html">XAMPP</a> en
  83. installateur ".exe"</li>
  84. <li>Pour installer <span style="font-weight: bold;">LAMP</span>
  85. (AMP sous Linux), utilisez le système de gestion de paquets de votre
  86. distribution préférée (apt, Synaptic, RPMFinder, yum etc.). Par exemple,
  87. sur un serveur Ubuntu, vous pouvez utiliser le Shell (terminal) ou
  88. Synaptic via le guide
  89. <a href="http://ubuntuguide.org/wiki/Ubuntu:Feisty#Apache_HTTP_Server">
  90. Ubuntuguide on Apache</a> et les sections suivantes du présent guide/li>
  91. <li>Pour installer <span style="font-weight: bold;">MAMP</span> (AMP sur Mac OS X),
  92. référez-vous au site dédié de
  93. <a href="http://www.mamp.info/en/index.php">MAMP</a></li>
  94. <li>Assurez-vous de vérifier les
  95. <a href="dependencies.html" title="Dependencies">dépendances</a> si vous
  96. avez besoin de connaîtres les pré-requis de façon plus précise.
  97. </ul>
  98. <br />
  99. <h3><span style="font-weight: bold;">Serveurs de base de données MySQL ou MariaDB</span></h3>
  100. Vous aurez besoin d'un login et d'un mot de passe pour gérer et <em>supprimer+créer</em> une base
  101. de données. Généralement, la configuration par défaut sur des ordinateurs
  102. locaux est de permettre la connexion comme utilisateur root avec un mot de passe
  103. vide. Il est FORTEMENT RECOMMANDÉ de modifier le mot de passe et de définir un
  104. utilisateur avec un accès à une (et une seule) base de données spécifique.
  105. Veuillez vous référer à la documentation de MySQL ou MariaDB pour ce faire.
  106. <br />
  107. <span class="text-muted">
  108. Les versions de Chamilo antérieures à la 1.9.0 nécessitaient de choisir entre une installation sur plusieurs bases
  109. et une installation obsolète sur une seule base. Ca a été clarifié et simplifié par l'usage d'une seule base de données.
  110. </span><br />
  111. <span class="text-muted">Si vous ne disposez pas des permissions de suppression+création de la base de
  112. données choisie, Chamilo ne pourra pas terminer l'installation car, pour éviter tout déchêt d'une
  113. version antérieure de Chamilo ou d'un autre système, nous supprimons d'abord la base de données avant
  114. de la recréer. C'est expliqué dans <a href="https://github.com/chamilo/chamilo-lms/issues/2172">un peu plus de détail dans cette demande</a></span><br />
  115. <h3><span style="font-weight: bold;">Redirections d'Apache</span></h3>
  116. <div>
  117. Depuis sa version 1.10, Chamilo exige que le serveur web puisse gérer les redirections. Il s'agit d'un pré-requis très commun de nos jours pour les applications web (autant CMS que LMS, ERP, etc) qui permet, entre autres, l'utilisation intelligente et user-friendly des URLs.<br />
  118. Si vous utilisez un autre serveur web qu'Apache, dirigez-vous à la section "Configuration de la réécriture" en fin de ce document.<br />
  119. Si vous utilisez Apache, la configuration des redirections se fait en deux étapes simples:
  120. <ul>
  121. <li>Activer le module "rewrite" d'Apache (en ligne de commande, faites simplement un "<i>sudo a2enmod rewrite</i>")</li>
  122. <li>Configurer le VirtualHost d'Apache pour qu'il inclue le bloc suivant, ce qui permettra l'interprétation des fichiers .htaccess</li>
  123. </ul>
  124. Pour Apache <=2.2 (remplacez /var/www/chamilo par le chemin vers votre répertoire de Chamilo):
  125. <pre>
  126. &lt;Directory /&gt;
  127. AllowOverride All
  128. Order allow,deny
  129. allow from all
  130. &lt;/Directory&gt;
  131. &lt;Directory /var/www/chamilo/&gt;
  132. AllowOverride All
  133. Order allow,deny
  134. allow from all
  135. &lt;/Directory&gt;
  136. </pre>
  137. et pour Apache >=2.4:
  138. <pre>
  139. &lt;Directory /&gt;
  140. AllowOverride All
  141. Require all granted
  142. &lt;/Directory&gt;
  143. &lt;Directory /var/www/chamilo/&gt;
  144. AllowOverride All
  145. Require all granted
  146. &lt;/Directory&gt;
  147. </pre>
  148. <br />
  149. Une fois configurée cette partie (qui est peut-être déjà mise en place par votre fournisseur d'hébergement), il suffit de redémarrer le serveur web pour activer la modification.
  150. </div>
  151. <hr style="width: 100%; height: 2px;" />
  152. <h2><a name="2._Installation_of_Chamilo_LMS"></a><span style="font-weight: bold;">2. Installation de Chamilo LMS</span></h2>
  153. <p>
  154. Avant d'installer Chamilo LMS, vous devez comprendre que du fait que Chamilo est un logiciel libre,
  155. de nombreux prestataires de service ont été en mesure de développer des extensions pour Chamilo,
  156. qui ont rendu son installation possible par différents biais :<br />
  157. <ul>
  158. <li>Comme un paquet "tout-compris" fourni par un fournisseur officiel certifié par l'association Chamilo</li>
  159. <li>Comme une solution installable depuis de nombreux hébergeurs supportant cPanel et Scriptaculous</li>
  160. <li>Sur votre hébergeur préféré en utilisant des installateurs distants comme Installatron</li>
  161. <li>Sur votre propre serveur, en le téléchargeant et l'installant manuellement</li>
  162. <li>Sur votre ordinateur, à la maison ou au bureau, juste pour tester et développer</li>
  163. </ul>
  164. Ce guide couvre uniquement les deux dernières méthodes. Pour les premières, veuillez consulter votre fournisseur de services pour plus d'infos.
  165. <br /><br />
  166. Pour installer Chamilo LMS, suivez ces 6 étapes :
  167. <ol>
  168. <li><a href="http://www.chamilo.org/download">Télécharger Chamilo LMS</a></li>
  169. <li>Décompressez-le</li>
  170. <li>Copiez le répertoire de Chamilo dans le répertoire racine de votre serveur web.
  171. Celui-ci peut se trouver dans <span style="font-weight: bold;">C:\xampp\htdocs\</span> sur
  172. une machine Windows avec WAMP, ou dans <span style="font-weight: bold;">/var/www/html/</span> (ou /var/www/) sur un serveur Linux</li>
  173. <li>Vérifiez que votre serveur web supporte les .htaccess (Voir la section "Configuration de la réécriture" plus bas)</li>
  174. <li>Ouvrez votre navigateur (Firefox, Chrome, ...) et tapez l'adresse suivante
  175. <span style="font-weight: bold;">http://localhost/chamilo/</span> si vous l'avez installé localement ou
  176. <span style="font-weight: bold;">http://www.domain.com/chamilo/</span> si vous l'avez installé à distance*
  177. </li>
  178. <li>Suivez le processus d'installation. Vous pouvez accepter toutes les
  179. valeurs par défaut. Pensez à modifier le mot de passe d'administrateur
  180. afin de vous en souvenir plus tard.</li>
  181. </ol>
  182. <span class="text-muted">* Nous recommandons de définir un Virtual Host spécifique pour cette installation, si vous avez les compétences pour ce faire</span>
  183. <br />
  184. <span class="muted">Note: si vous installez Chamilo localement en utilisant
  185. "localhost" ou l'adresse IP de votre ordinateur durant l'installation, vous
  186. pourriez rencontrer des difficultés lors de l'accès depuis d'autres ordinateurs.
  187. Pour éviter ça, vous pouvez
  188. <a href="http://beeznest.wordpress.com/2013/01/15/answering-to-different-addresses-with-chamilo/">appliquer une petite modification à votre
  189. fichier de configuration</a>.</span>
  190. <br /> <br />
  191. Les répertoires suivants doivent êtres lisibles, éditables et exécutables par votre serveur web.
  192. <br />
  193. <span class="muted">Note: Cela ne requiert généralement pas de modification spécifique
  194. sous Windows (ce qui est d'ailleurs l'une des raisons principales pour
  195. l'existence d'autant de virus et malware pour ce système d'exploitation,
  196. mais cela demande l'utilisation de "chmod" sous Linux et Mac. Dans ces
  197. derniers cas, veuillez suivre les instructions qui suivent.</span>
  198. <br /><br />
  199. Remplacez [chamilo] par le répertoire où vous avez placé le contenu du zip:
  200. <ul>
  201. <li>[chamilo]/app/</li>
  202. <li>[chamilo]/vendor/ (nécessite seulement d'être lisible et exécutable)</li>
  203. <li>[chamilo]/web/</li>
  204. <li>[chamilo]/main/default_course_document/images/</li>
  205. </ul>
  206. Optionnellement, vous pouvez faire la même chose pour les répertoires suivants
  207. si vous souhaitez permettre l'envoi de styles CSS ou la définition de nouvelles
  208. langues par les administrateurs de Chamilo:
  209. <ul>
  210. <li>[chamilo]/main/lang/</li>
  211. </ul>
  212. <br />
  213. <span class="text-muted">
  214. Si vous trouvez un répertoire tests/ à la racine, veuillez le supprimer.
  215. Il s'agit d'un répertoire de développement qui ne bénéficie pas des
  216. vérifications de sécurité nécessaires pour un système en production. Il ne
  217. devrait en tout cas *jamais* être accessible aux utilisateurs finaux sur un
  218. système en production.
  219. </span>
  220. <br /><br />
  221. <p><span class="text-muted">Sous les systèmes d'exploitation Linux, Mac OS X et BSD, vous pouvez utiliser
  222. la commande <em>chmod 0775</em> pour modifier les permissions, bien que nous
  223. recommandions, pour des raisons de sécurité, de cherchez l'assistance d'un
  224. administrateur système expérimenté pour le faire.
  225. Sous Windows, vous pourriez avoir besoin de vérifier les propriétés de ces
  226. répertoires (en cliquant dessus avec le bouton droit de la souris).</span></p>
  227. <h3>Sécurité : liste à vérifier après l'installation</h3>
  228. <ul>
  229. <li><strong>Protégez votre répertoire de configuration: </strong>
  230. assurez-vous que personne (à part vous) ne puisse l'éditer.
  231. Vous trouverez le répertoire de configuration dans <em>(chamilo folder)</em>/app/config.
  232. Rendez-le lisible uniquement (windows/xwindows: click-droit sur le répertoire
  233. pour en éditer les propriétés - Linux/BSD/MacOSX: utilisez la commande "chmod -r 0555".
  234. Le fichier de configuration (main/inc/conf/configuration.php) est créé par votre serveur webThe config
  235. file is created by your web server (Apache + PHP, usually) so you may
  236. need to be root user to change its permissions.</li>
  237. <li><strong>Configurez votre installation de Chamilo: </strong>
  238. dans la section d'administration de Chamilo, vous pouvez utiliser les paramètres
  239. de configuration pour ajuster le comportement de votre installation.</li>
  240. <li>Des astuces pour une sécurité plus forte sont disponibles dans notre nouveau <a href="./security.html">guide de sécurité</a></li>
  241. </ul>
  242. <br />
  243. <h3>Configuration de PHP</h3>
  244. Pour obtenir le meilleur de votre installation de Chamilo, vous devez configurer vos paramètres PHP: <br />
  245. <ul>
  246. <li>
  247. Configurer les mails de Chamilo : la plupart des portails Chamilo utilisent les propriétés mail définies dans le fichier php.ini.
  248. Cependant si vous utilisez un serveur mail distinct, vous voudrez peut-être ajuster les propriétés mail
  249. dans <em>(chamilo folder)</em>/app/config/mail.conf.php
  250. </li>
  251. <li>Editez le fichier php.ini (sous Windows, il devrait se trouver dans
  252. <span style="font-weight: bold;">C:\xampp\php\php.ini</span>,
  253. et sous Debian ou Ubuntu (Linux) :
  254. <span style="font-weight: bold;">/etc/php5/apache2/php.ini</span></li>
  255. <li>cherchez les mots contenant "_max" et augmentez les deux valeurs pour optimiser le serveur</li>
  256. <li>nous recommandons les valeurs suivantes : </li>
  257. </ul>
  258. <div class="code">
  259. max_execution_time = 300 ;Maximum execution time of each script, in seconds<br />
  260. max_input_time = 600 ;Maximum amount of time each script may spend parsing request data<br />
  261. memory_limit = 128M ;Maximum amount of memory a script may consume (128MB)<br />
  262. post_max_size = 100M<br />
  263. upload_max_filesize = 100M;<br />
  264. short_open_tag = Off<br />
  265. safe_mode = Off<br />
  266. magic_quotes_gpc = Off<br />
  267. magic_quotes_runtime = Off<br />
  268. </div>
  269. <br />
  270. <p>
  271. <strong>Important :</strong>
  272. Vous aurez besoin de définir votre <em>date.timezone</em> en fonction de votre fuseau horaire.
  273. Par exemple si votre serveur se trouve dans la zone America/New_York, indiquez cette valeur pour
  274. le paramètre date.timezone du fichier php.ini :
  275. </p>
  276. <div class="code">
  277. date.timezone = 'America/New_York'
  278. </div>
  279. <p><strong>Note:</strong> PHP 5.3.9 introduit un nouveau paramètre appelé
  280. "max_input_vars", qui limite le nombre d'éléments que vous pouvez envoyer au
  281. travers d'un formulaire déterminé. Si vous devez gérer de grandes quantités
  282. d'utilisateurs ou de longs parcours d'apprentissage (de nombreux éléments),
  283. assurez-vous de configurer ce paramètre plus haut que se valeur par défault
  284. de 1000.</p>
  285. <p><strong>Utilisateurs de BSD:</strong> les librairies suivantes doivent être
  286. inclues durant l'installation de PHP:</p>
  287. <ul>
  288. <li>php5-session : L'extension pour le partage des sessions pour php</li>
  289. <li>php5-mysqlnd (ou php5-mysqli) : L'extension mysql pour php</li>
  290. <li>php5-zlib : L'extension zlib partagée pour php</li>
  291. <li>php5-pcre: L'extension pcre partagée pour php</li>
  292. <li>php5-xml</li>
  293. <li>php5-json</li>
  294. <li>php5-mcrypt</li>
  295. <li>php5-iconv ou php5-mbstring (au choix)</li>
  296. <li>php5-gd L'extension de manipulation d'images pour PHP</li>
  297. <li>php5-intl L'extension pour la gestion de l'internationalisation pour PHP</li>
  298. </ul>
  299. <p>Nous recommandons aussi les extensions suivantes:</p>
  300. <ul>
  301. <li>php5-ctype</li>
  302. <li>php5-ldap</li>
  303. <li>php5-xapian</li>
  304. <li>php5-curl</li>
  305. <li>php5-xsl</li>
  306. </ul>
  307. <div style="color: red;">Certains sections de ce manuel ne sont pas encore traduites. N'hésitez pas à consulter
  308. le <a href="http://www.chamilo.org/forum">forum de Chamilo</a> si la lecture
  309. en anglais vous est impossible.</div>
  310. <hr />
  311. <h2><a name="3._Upgrade_from_a_previous_version_of"></a>3. Mettre à jour depuis
  312. une version antérieure de Chamilo LMS (1.*) ou de Dok€os (&lt;2.0)</h2>
  313. Avant de mettre à jour, nous recommandons chaudement la prise d'une copie de
  314. sauvegarde de votre installation (répertoires et bases de données).
  315. Si vous ne savez pas comment faire, consultez votre fournisseur d'hébergement
  316. ou un administrateur système qualifié avant de continuer l'installation.<br /><br />
  317. <em>Chamilo LMS 1.10 (et donc 1.11) est livré avec une nouvelle structure de bases de données
  318. en comparaison avec 1.8. Bien que le script de migration la prenne
  319. complètement en charge, il pourrait générer une surcharge sur votre serveur
  320. durant la mise à jour, et il changera la base de données de façon assez
  321. profonde, préservant les données le mieux possible (nous avons testé la
  322. procédure de nombreuses fois, mais rappelez-vous qu'il s'agit d'un logiciel
  323. GNU/GPLv3 et que nous ne saurions être tenus pour responsables de ce qui
  324. pourrait arriver à vos données sans la supervision d'un professionnel).
  325. C'est pour cela que nous recommandons *vraiment* de faire un backup complet de
  326. votre système avant la mise à jour.</em>
  327. <br />
  328. <br />
  329. Notez également que Chamilo LMS 1.10 (et donc 1.11) agrège les fichiers du dossier
  330. main/lang en un fichier unique par langue. Si vous avez modifiez les fichiers de langue directement (plutôt que
  331. d'utiliser la méthode recommandée des sous-langages), vous devriez faire une copie
  332. des traductions modifiées avant la mise à jour. Les sous-langages nécessitent également
  333. un peu de travail manuel, mais la procédure de mise à jour n'y touchera pas directement.
  334. <br /><br />
  335. <div class="text-muted"> NOTE: Pour les bases de données très lourdes de Chamilo,
  336. certains de nos fournisseurs officiels ont dévelopé des procédures de
  337. migration optimisées qui utilisent plus de mémoire mais exécutent les
  338. migrations beaucoup plus rapidement. Si c'est le genre de choses qui
  339. vous intéresse, nous vous recommandons chaudement de les contacter (voir
  340. références ci-dessous).</div>
  341. <div class="text-muted">
  342. NOTE: Cette version de Chamilo peut seulement être utilisée pour mettre à jour des versions antérieures de Chamilo ou de Dok€os.
  343. Par exemple vous ne pouvez pas utiliser les scripts de mise à jour normaux de Chamilo 1.11 pour effectuer une mise à jour depuis Dok€os 2.0 (dont la sortie est ultérieure à celle de la création de Chamilo).
  344. Si vous avez besoin de ce genre de choses, nous vous conseillons de contacter <a href="https://chamilo.org/providers">les fournisseurs officiels de l'Association Chamilo</a>)
  345. </div>
  346. <p></p>
  347. <h3>3.1 Mettre à jour depuis Chamilo 1.11.x (upgrade mineure)</h3>
  348. Comme cette version est une version mineure de Chamilo par rapport à une
  349. quelconque version 1.11.*, les seuls pas à suivre sont:
  350. <ul>
  351. <li>
  352. vérifier que vous n'avez pas créé une version modifiée d'une feuille de
  353. style en utilisant un répertoire css existant <span class="text-muted">(si c'est le cas, elle sera
  354. écrasée par la mise à jour. Gardez-en une copie que vous renommerez au
  355. moment de la replacer dans le répertoire main/css/)</span>
  356. </li>
  357. <li> téléchargez le paquet d'installation de Chamilo 1.11 depuis la
  358. <a href="http://www.chamilo.org/download">page de téléchargement de Chamilo</a></li>
  359. <li> dézippez les nouveaux fichiers de Chamilo 1.11 par dessus les fichiers de
  360. l'ancienne version (ou dézippez les fichiers dans un répertoire et copiez-les ensuite
  361. là où se trouve votre version actuelle de Chamilo)</li>
  362. <li> éditez le fichier app/config/configuration.php: à la fin du fichier,
  363. localisez le numéro de version antérieur (p.ex. '1.11.0') et remplacez-le
  364. par le numéro de la nouvelle version (p.ex. '1.11.2')</li>
  365. <li> Videz votre dossier archive/ : faites une copie temporaire de index.html, supprimez touss les contenus *dans* ce dossier (ne supprimer pas le dossier, juste ses contenus). Vous pouvez également vider ce dossier depuis le lien "Vidange du répertoire archive" du bloc "Système" de l'interface d'administration.</li>
  366. <li> fini! Il n'y a pas d'autre procédure requise</li>
  367. </ul>
  368. <br />
  369. <h3>3.2 Mettre à jour depuis Chamilo 1.9.x ou 1.10.x</h3>
  370. <ul>
  371. <li> assurez-vous qu'aucune table ne persiste d'une version antérieure de Chamilo. Ces tables peuvent en effet causer une erreur durant la mise à jour. En particulier, les tables des versions 1.8.* et antérieures pouvaient se répéter une fois par cours, résultant en un grand nombre de tables partageant le même préfixe. Seules les tables sans préfixe ou avec un préfixe "c_" sont légitimes dans les versions 1.9 et supérieures. Assurez-vous qu'aucune de ces anciennes tables ne persiste. Prenez une copie de sauvegarde de votre base de données (au cas où) puis supprimez-les (drop table ...).</li>
  372. <li> vérifiez que vous n'avez pas laissé de feuille de style personnalisée ou d'image <span class="text-muted">(le cas échant, faites-en une sauvegarde*)</span></li>
  373. <li> télécharger le paquet Chamilo 1.11 depuis la <a href="http://www.chamilo.org/download">page de téléchargement de Chamilo</a></li>
  374. <li> décompressez les nouveaux fichiers de Chamilo 1.11 sur les fichiers de votre ancienne installation (ou décompressez les dans un nouveau dossier et copier les fichiers extraits sur les anciens fichiers).</li>
  375. <li> vérifiez que le fichier .htaccess de la version 1.11 a bien été copié</li>
  376. <li> vérifiez que "AllowOverride All" est présent dans votre configuration Apache, car l'interprétation du fichier .htaccess est capitale pour le fonctionnement de Chamilo</li>
  377. <li> accéder à l'adresse de votre portail URL + main/install </li>
  378. <li> Choisissez votre langue et cliquez sur <span style="font-style: italic;">Mettre à jour depuis la version 1.8.x / 1.9.x</span></li>
  379. <li> Videz votre dossier archive/ : faites une copie temporaire de index.html, supprimez touss les contenus *dans* ce dossier (ne supprimer pas le dossier, juste ses contenus). Vous pouvez également vider ce dossier depuis le lien "Vidange du répertoire archive" du bloc "Système" de l'interface d'administration.</li>
  380. </ul>
  381. <br />
  382. <span class="text-muted">* Les styles et images se trouvent dans les répertoires main/css ou main/img.
  383. Vous pouvez les récupérer depuis la copie de sauvegarde (que vous n'avez pas manqué de prendre).
  384. Toute image ou style modifié qui utilise le nom de l'image/style par défaut sera
  385. écrasé lors de l'étape suivante. Pour éviter la perte de customisations, assurez-vous toujours
  386. de copier les styles/images sous un nouveau nom et de modifier la copie et non l'original.
  387. L'original sera toujours écrasé par la nouvelle version. Dans Dok€os 1.8.5, nous avons changé
  388. le nom de quelques thèmes CSS. La compatibilité descendante est assurée par le fait que la mise à
  389. jour ne fait qu'ajouter de nouveaux thèmes, mais essayez toujours d'utiliser de préférence les
  390. nouveaux thèmes plutot que se conserver d'anciennes versions qui ne seront plus maintenues.</span>
  391. <br />
  392. <p></p>
  393. <p>
  394. <b>ATTENTION:</b><br />
  395. Ne supprimez pas le précédent dossier d'installation de Chamilo avant d'avoir installé le nouveau.
  396. Quand la mise à jour sera terminée, les dossiers obsolètes devraient être automatiquement pris en charge.
  397. </p>
  398. <h3>3.3 Mettre à jour depuis Chamilo 1.8.x</h3>
  399. Pour mettre à jour depuis une version antérieure à la 1.9.0, vous devrez commencer par la mettre à jour vers la version 1.9.10.x,
  400. et seulement alors mettre à jours vers la 1.11.x.
  401. Vous pouvez trouver une version téléchargeable de 1.9.10.x ici: <a href="https://github.com/chamilo/chamilo-lms/releases">https://github.com/chamilo/chamilo-lms/releases</a>
  402. <p></p>
  403. <h3>3.4 Dans les deux derniers cas</h3>
  404. Les répertoires suivants doivent être accessibles en lecture, écriture et
  405. exécution pour le serveur web:
  406. <ul>
  407. <li>[chamilo]/main/lang/ (pour supprimer les fichiers de langues inutiles)</li>
  408. <li>[chamilo]/courses/ (pour déplacer les cours dans le dossier app/courses)</li>
  409. <li>[chamilo]/archive/ (pour supprimer les fichiers inutiles ou les déplacer dans app/cache/)</li>
  410. <li>[chamilo]/home/ (pour déplacer les fichiers dans app/home)</li>
  411. <li>[chamilo]/app</li>
  412. <li>[chamilo]/web</li>
  413. <li>[chamilo]/vendor</li>
  414. <li>[chamilo]/main/default_course_document/images/</li>
  415. </ul>
  416. On Linux, Mac OS X and BSD operating systems you can quick-fix this using the
  417. <em>chmod 0777</em> command, but if you are unsure, we recommend you seek advice for
  418. your own OS on <a href="https://www.chamilo.org/forum">our forum</a>.
  419. In Windows, you may need to check the properties of the folders.
  420. <p></p>
  421. <hr style="width: 100%; height: 2px;" />
  422. <h2><a name="4._Troubleshooting"></a>4. Problèmes</h2>
  423. <p>If you have&nbsp;problems, go to the <a href="https://chamilo.org">Chamilo website</a> and ask a question on the
  424. <a href="https://chamilo.forum">support forum</a>. Please read the previous messages first to see if there is
  425. already an answer to your question.</p>
  426. <h2></h2>
  427. <hr style="width: 100%; height: 2px;" />
  428. <h2><a name="5._Administration_section"></a>5. Section d'administration</h2>
  429. <p>Pour accéder à la section d'administration, ouvrez un navigateur, chargez l'adresse de votre Chamilo
  430. et connectez-vous avec l'utilisateur administrateur.
  431. Vous verrez alors un onglet "Administration" dans le menu principal.
  432. Vous pouvez y gérer les utilisateurs, les cours, les sessions et
  433. l'apparence de votre site</p>
  434. <p></p>
  435. <hr style="width: 100%; height: 2px;" />
  436. <h2><a name="6._LDAP"></a>6. LDAP</h2>
  437. <p>
  438. <i>This part is optional, only organisations with an LDAP server will need to read this.</i><br />
  439. An LDAP module is already provided in Chamilo, but it has to be configured to make it work.</p>
  440. <h3><b>Compiler</b></h3>
  441. <p>
  442. Linux servers: It's possible that you have to recompile php with ldap support.
  443. Newer distributions also allow downloading rpms for additional packages.</p>
  444. <h3><b>Activer LDAP dans Chamilo</b></h3>
  445. <p class="text-muted">
  446. Note: Vérifiez la configuration LDAP dans Chamilo pour voir le détail
  447. </p>
  448. <p>
  449. In [Chamilo folder]/app/config/configuration.php, around line 93, you'll find settings like the following: <br />
  450. // -> Uncomment the two lines below to activate LDAP AND edit main/inc/conf/auth.conf.php for configuration<br />
  451. // $extAuthSource["extldap"]["login"] = $_configuration['root_sys'].$_configuration['code_append']."auth/external_login/login.ldap.php";<br />
  452. // $extAuthSource["extldap"]["newUser"] = $_configuration['root_sys'].$_configuration['code_append']."auth/external_login/newUser.ldap.php";<br />
  453. <br />
  454. remove the // from the last two lines to activate LDAP.<br />
  455. </p>
  456. <h3><b>Settings</b></h3>
  457. <p>
  458. Ask the LDAP server admin for the settings:</p>
  459. <ul>
  460. <li>ldap server name</li>
  461. <li>ldap server port (usually 389)</li>
  462. <li>ldap dc</li>
  463. </ul>
  464. Since 1.8.5, you have to change the LDAP settings inside the "Portal
  465. administration" panel, under "Chamilo configuration settings", section
  466. "LDAP".
  467. <br />
  468. As an example, you should find the following kind of values:<br />
  469. LDAP main server's address: "myldapserver.com"; // your ldap server<br />
  470. LDAP main server's port: 389; // your ldap server's port number<br />
  471. LDAP domain: "dc=xx, dc=yy, dc=zz"; //domain<br />
  472. <br />
  473. <h3><b>Teacher/student status</b></h3>
  474. <p>
  475. By default, Chamilo will check if the "employeenumber" field has a value. If it has, then Chamilo will
  476. consider this user as being a teacher.<br />
  477. If you want to change this behaviour, you can edit main/auth/ldap/authldap.php, function ldap_put_user_info_locally(),
  478. and change the <em>if (empty($info_array[$tutor_field]))</em> condition to whatever suits you.<br />
  479. You can also remove this check by removing the condition and leaving only the <em>$status = STUDENT;</em> line.</p>
  480. <h3><b>Protected LDAP servers</b></h3>
  481. <p>
  482. Some LDAP servers do not support anonymous use of the directory services.<br />
  483. In this case, you should fill in the appropriate fields in the
  484. administration panel (e.g. "manager" and "mypassword") and Chamilo will
  485. try to authenticate using these, or fall back to anonymous mode before
  486. giving up.</p>
  487. <h3>LDAP import into sessions</h3>
  488. <p>There is a new set of scripts now that allow you to insert users
  489. from LDAP directly into a Chamilo session. This, however, relies on a
  490. set of static choices in the LDAP contact attributes.<br />
  491. The fields used intensively by the Chamlio module are:<br />
  492. </p>
  493. <ul>
  494. <li>uid, which is matched to the username in Chamilo</li>
  495. <li>userPassword, which is matched to the user password, although
  496. this part will only work for non-encrypted passwords for now, but it
  497. shouldn't be necessary if using the LDAP server as authentication</li>
  498. <li>ou should end with the year of the person registration or any
  499. criteria you will use to filter users, so that they can be retrieved on
  500. that criteria</li>
  501. <li>sn is used as the lastname field in Chamilo</li>
  502. <li>givenName is used as the firstname field in Chamilo</li>
  503. <li>mail is used as the email field in Chamilo</li>
  504. </ul>
  505. <hr style="width: 100%; height: 2px;" />
  506. <h2><a name="9._WIRIS_mathematical_formulas"></a>9. Formules mathématiques avec WIRIS</h2>
  507. <p>Installing this plugin you get WIRIS editor and WIRIS CAS. <br/>
  508. This activation will not be completed unless you have previously downloaded the <a href="http://www.wiris.com/plugins/ckeditor/download" target="_blank">PHP plugin for CKeditor WIRIS</a> and unzipped its contents into the main/inc/lib/ckeditor/editor/plugins/ckeditor_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>
  509. <hr style="width: 100%; height: 2px;" />
  510. <h2><a name="10._Xapian_fulltext_indexing"></a>Indexation full-text avec Xapian</h2>
  511. <div>
  512. <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 />
  513. On Debian or Ubuntu 10.04 and superior, you will simply need to install the php5-xapian package and restart your web server:
  514. <pre>
  515. sudo apt-get install php5-xapian
  516. sudo /etc/init.d/apache2 restart
  517. </pre>
  518. Then go to your administration page -&gt; Configuration settings -&gt; Search
  519. and enable the search tool. Follow the recommendations on the page to get the
  520. complete indexing suite installed. Once you're done, all documents you import
  521. into your Chamilo portal in a recognized format will be indexed and searchable.
  522. Chamilo Administrators training (which you can ask any <a href="http://www.chamilo.org/en/providers">Chamilo's Official
  523. Provider</a> for) include a full review of the full-text search feature.
  524. </div>
  525. <p class="text-muted">
  526. Note: Xapian's licensing for the PHP extension is a bit different than what is necessary to enter the Debian repositories, so it has been excluded. You can, however, generate your own package by following the <a href="http://trac.xapian.org/wiki/FAQ/PHP%20Bindings%20Package">packaging instructions on Xapian's wiki</a>.
  527. </p>
  528. <hr style="width: 100%; height: 2px;" />
  529. <h2><a name="11._Chamilo_rapid_ppt_conversion"></a>Chamilo Rapide - Conversion de PPT</h2>
  530. <div>
  531. <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 />
  532. On Debian or Ubuntu 11.10 and superior, install LibreOffice.org v3 and start it as a headless server:
  533. <pre>
  534. sudo apt-get install libreoffice
  535. sudo soffice -accept="socket,host=127.0.0.1,port=2002,tcpNoDelay=1;urp;" -headless -nodefault -nofirststartwizard -nolockcheck -nologo -norestore &amp;
  536. </pre>
  537. 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.
  538. <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).
  539. </div>
  540. <hr style="width: 100%; height: 2px;" />
  541. <h2><a name="12._Setting_cron_up"></a>Configurer les tâches chronologiques</h2>
  542. <p>
  543. Since Chamilo 1.8.8, a few tasks need to be executed regularly in order to get
  544. the best out of your server resources. One of such tasks (and the only one
  545. around at the time of Chamilo 1.8.8) is the sending of internal messaging
  546. notifications by e-mail, i.e. when you receive an e-mail from another person or
  547. from a group inside the internal messaging system of Chamilo, if all e-mails are
  548. sent immediately, then you might not have the chance to receive them at your
  549. pace, once a day or even once a week. For cases like this you, as a Chamilo
  550. administrator, should setup a cron process on the server to check the queue of
  551. e-mails and send is timely.</p>
  552. <div>
  553. Setting up a cron task is easy and there are several ways to do it. We recommend
  554. you have a look at the <a href="http://drupal.org/cron">Drupal documentation
  555. for setting up cron</a> and define your own cron process as:
  556. <pre>
  557. 35 * * * * wget -O - -q -t 1 http://campus.example.com/main/cron/run.php
  558. </pre>
  559. Make sure you have a look into run.php as maybe you want to change a few
  560. settings there.
  561. </div>
  562. <hr style="width: 100%; height: 2px;" />
  563. <h2><a name="13._Changing_language_names_order"></a>Changer l'ordre nom/prénom des langues</h2>
  564. <div>
  565. 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 />
  566. This can easily be modified by editing the app/config/configuration.php file, finding the following section, uncommenting the PHP lines and adapting it to your language:<br />
  567. <pre>// Custom name_order_conventions
  568. //$_configuration['name_order_conventions'] = array(
  569. // 'french' => array('format' => 'title last_name first_name', 'sort_by' => 'last_name')
  570. //);</pre><br />
  571. Feel free to change this to<br />
  572. <pre>// Custom name_order_conventions
  573. $_configuration['name_order_conventions'] = array(
  574. 'french' => array('format' => 'first_name last_name', 'sort_by' => 'last_name')
  575. );</pre><br />
  576. for example. The effect should be immediate.
  577. </div>
  578. Please note that, although Chamilo allows you to define its position, the "title" field does not exist at this time, so no need to worry about it.
  579. <hr style="width: 100%; height: 2px;" />
  580. <h2><a name="14._Improving_files_download"></a>Améliorer la performance des téléchargements de fichiers</h2>
  581. <div>
  582. File download can be very slow when passing through a PHP script to control permissions. One solution to this
  583. is to use the X-Sendfile header, which depends on a module on the webserver. <a href="http://stackoverflow.com/a/3731639/1406662">Check http://stackoverflow.com/a/3731639/1406662 for more details on implementing Sendfile</a>.
  584. Chamilo LMS 1.9.8 (and following versions) supports the X-Sendfile headers, but requires a specific line of configuration to be
  585. added to configuration.php:
  586. <pre>
  587. $_configuration['enable_x_sendfile_headers'] = true;
  588. </pre>
  589. If you have issues with files taking a long time to download, make sure you reconfigure your webserver and add this line. You should see an notable difference in download time.
  590. </div>
  591. <hr style="width: 100%; height: 2px;" />
  592. <h2><a name="15._Videoconference"></a>Vidéo-conférence</h2>
  593. <p>
  594. Chamilo supporte la connexion à deux serveurs de vidéo-conférence : BigBlueButton (versions 0.81 et 0.9) et OpenMeetings.<br />
  595. Tandis que BigBlueButton paraît plus simple d'installation, plus clairement documenté et plus
  596. abouti esthétiquement, certains utilisateurs ont attesté que OpenMeetings consomme moins
  597. de bande passante, est moins restrictif en termes d'environnement et offre plus d'outils
  598. et de connecteurs.<br />
  599. La décision vous revient, mais dans chaque cas vous aurez à installer un serveur de vidéo-conférence
  600. en plus du processus d'installation normal de Chamilo.<br />
  601. Consultez le <a href="http://docs.bigbluebutton.org/install/install.html">guide d'installation de BigBlueButton</a>
  602. Une fois celui-ci installé, entrez la commande "bbb-conf --secret" pour obtenir les paramètres à indiquer dans le plugin
  603. "Vidéo-conférence" de Chamilo (page Paramètres de configuration).<br />
  604. Une icône "Vidéo-conférence" devrait alors apparaître dans chaque cours.<br />
  605. </p>
  606. <hr style="width: 100%; height: 2px;" />
  607. <h2><a name="16._Rewrite"></a>Réécriture</h2>
  608. <p>
  609. Chamilo LMS 1.10 est la première version nécessitant que le serveur web autorise les redirections d'url (et donc 1.11 également).<br />
  610. Pour Apache, il s'agit d'active le module rewrite et d'autoriser l'utilisation des fichiers .htaccess ou d'ajouter une section spécifique dans le Virtual Host.<br />
  611. Pour Nginx, il s'agit de définir les règles de redirections dans le Virtual Host.<br /><br />
  612. Pour être certain que c'est à la portée de tous, nous recommandons le fichier de configuration ci-dessous pour vous aider dans les deux cas.
  613. Notez que l'utilisation d'un fichier .htaccess est la solution la plus facile mais peut altérer les performances de votre serveur,
  614. car les fichiers .htaccess sont interprêtés à *chaque* requête, alors qu'une section de configuration supplémentaire dans le Virtual Host
  615. est compilée uniquement lors du chargement du serveur.
  616. <h3>Apache + .htaccess</h3>
  617. <div>
  618. Pour activer le .htaccess dans Apache, vous devez juste vérifier une chose : dans un tag &lt;Directory&gt; du dossier racine de Chamilo, vérifiez que les lignes suivantes sont présentes :
  619. <pre>
  620. AllowOverride All
  621. Order allow,deny
  622. allow from all
  623. </pre>
  624. ou, si vous travaillez avec Apache 2.4, la syntaxe est légèrement différente et ressemble plutôt à ça :
  625. <pre>
  626. AllowOverride All
  627. Require all granted
  628. </pre>
  629. </div>
  630. <h3>Apache RewriteRules</h3>
  631. <pre>
  632. &lt;LocationMatch "/.git*"&gt;
  633. order deny,allow
  634. deny from all
  635. &lt;/LocationMatch&gt;
  636. &lt;Directory ~/.&gt;
  637. AllowOverride None
  638. Options -Indexes
  639. &lt;/Directory&gt;
  640. &lt;Directory "/var/www/chamilo"&gt;
  641. RewriteEngine On
  642. RewriteCond %{QUERY_STRING} ^id=(.*)$
  643. RewriteRule ^certificates/$ certificates/index.php?id=%1 [L]
  644. RewriteRule ^courses/([^/]+)/?$ main/course_home/course_home.php?cDir=$1 [QSA,L]
  645. RewriteRule ^courses/([^/]+)/index.php$ main/course_home/course_home.php?cDir=$1 [QSA,L]
  646. RewriteRule ^courses/([^/]+)/scorm/(.*([\.js|\.css|\.png|\.jpg|\.jpeg|\.gif]))$ app/courses/$1/scorm/$2 [QSA,L]
  647. RewriteRule ^courses/([^/]+)/scorm/(.*)$ main/document/download_scorm.php?doc_url=/$2&cDir=$1 [QSA,L]
  648. RewriteRule ^courses/([^/]+)/document/certificates/(.*)$ app/courses/$1/document/certificates/$2 [QSA,L]
  649. RewriteRule ^courses/([^/]+)/document/(.*)$ main/document/download.php?doc_url=/$2&cDir=$1 [QSA,L]
  650. RewriteRule ^courses/([^/]+)/upload/course_home_icons/(.*([\.js|\.css|\.png|\.jpg|\.jpeg|\.gif]))$ app/courses/$1/upload/course_home_icons/$2 [QSA,L]
  651. RewriteRule ^courses/([^/]+)/upload/([^/]+)/(.*)$ main/document/download_uploaded_files.php?code=$1&type=$2&file=$3 [QSA,L]
  652. RewriteRule ^courses/([^/]+)/work/(.*)$ main/work/download.php?file=work/$2&cDir=$1 [QSA,L]
  653. RewriteRule ^courses/([^/]+)/course-pic85x85.png$ main/inc/ajax/course.ajax.php?a=get_course_image&code=$1&image=course_image_source [QSA,L]
  654. RewriteRule ^courses/([^/]+)/course-pic.png$ main/inc/ajax/course.ajax.php?a=get_course_image&code=$1&image=course_image_large_source [QSA,L]
  655. RewriteRule ^courses/([^/]+)/(.*)$ app/courses/$1/$2 [QSA,L]
  656. RewriteRule ^session/(\d{1,})/about/?$ main/session/about.php?session_id=$1 [L]
  657. RewriteRule ^course/(\d{1,})/about/?$ main/course_info/about.php?course_id=$1 [L]
  658. RewriteRule ^badge/(\d{1,}) main/badge/issued.php?issue=$1 [L]
  659. RewriteRule ^skill/(\d{1,})/user/(\d{1,}) main/badge/issued_all.php?skill=$1&user=$2 [L]
  660. RewriteRule ^badge/(\d{1,})/user/(\d{1,}) main/badge/issued_all.php?skill=$1&user=$2 [L]
  661. RewriteRule ^main/exercice/(.*)$ main/exercise/$1 [QSA,L]
  662. RewriteRule ^main/newscorm/(.*)$ main/lp/$1 [QSA,L]
  663. RewriteRule ^service/(\d{1,})$ plugin/buycourses/src/service_information.php?service_id=$1 [L]
  664. RewriteRule ^lti/os$ plugin/ims_lti/outcome_service.php [L]
  665. RewriteRule ^([^/.]+)/?$ user.php?$1 [L]
  666. RewriteRule ^(tests|.git) - [F,L,NC]
  667. &lt;/Directory&gt;
  668. </pre>
  669. <h3>Nginx</h3>
  670. Nginx ne supporte pas les règles .htaccess, donc vous n'avez pas d'autre option que d'appliquer les règles suivantes (notez que la configuration PHP peut changer).
  671. Ce sont uniquement les redirections à placer dans un bloc server{}, comme les autres valeurs peuvent changer d'une installation à l'autre.
  672. <pre>
  673. # Add your own "server {" header here with listen, server_name, access_log, error_log, index, root and error_page params
  674. charset utf-8;
  675. location @rewrite{
  676. rewrite ^certificates/$ certificates/index.php last;
  677. rewrite ^/courses/([^/]+)/$ /main/course_home/course_home.php?cDir=$1 last;
  678. rewrite ^/courses/([^/]+)/index.php$ /main/course_home/course_home.php?cDir=$1 last;
  679. rewrite ^/courses/([^/]+)/scorm/(.*([\.js|\.css|\.png|\.jpg|\.jpeg|\.gif]))$ app/courses/$1/scorm/$2 last;
  680. rewrite ^/courses/([^/]+)/scorm/(.*)$ /main/document/download_scorm.php?doc_url=/$2&cDir=$1 last;
  681. # Alternatively, you can choose to give direct access to all SCORM files, which is much faster but less secure
  682. # rewrite "^/courses/([^/]+)/scorm/(.*)$" /app/courses/$1/scorm/$2 break;
  683. rewrite "^/courses/([^/]+)/document/certificates/(.*)$" /app/courses/$1/document/certificates/$2 last;
  684. rewrite ^/courses/([^/]+)/document/(.*)$ /main/document/download.php?doc_url=/$2&cDir=$1 last;
  685. rewrite ^/courses/([^/]+)/upload/([^/]+)/(.*)$ /main/document/download_uploaded_files.php?code=$1&type=$2&file=$3 last;
  686. rewrite ^/courses/([^/]+)/work/(.*)$ /main/work/download.php?file=work/$2&cDir=$1 last;
  687. rewrite ^/courses/([^/]+)/upload/course_home_icons/(.*([\.png|\.jpg|\.jpeg|\.gif]))$ app/courses/$1/upload/course_home_icons/$2 last;
  688. rewrite ^/courses/([^/]+)/(.*)$ /app/courses/$1/$2 last;
  689. rewrite ^/session/([^/]+)/about/?$ /main/session/about.php?session_id=$1 last;
  690. rewrite ^/badge/(\d+) /main/badge/issued.php?issue=$1 last;
  691. rewrite ^/skill/(\d+)/user/(\d+)$ /main/badge/issued_all.php?skill=$1&user=$2 last;
  692. rewrite ^/badge/(\d+)/user/(\d+)$ /main/badge/issued_all.php?skill=$1&user=$2 last;
  693. rewrite ^/main/exercice/(.*)$ /main/exercise/$1 last;
  694. rewrite ^/main/newscorm/(.*)$ /main/lp/$1 last;
  695. rewrite ^/service/(\d+)$ /plugin/buycourses/src/service_information.php?service_id=$1 last;
  696. rewrite "^/main/upload/users/(.*)/(.*)/my_files/(.*)$" /app/upload/users/$1/$2/my_files/$3 last;
  697. try_files $uri /index.php$is_args$args;
  698. break;
  699. }
  700. location / {
  701. rewrite ^/courses/([^/]+)/$ /main/course_home/course_home.php?cDir=$1 last;
  702. rewrite ^/courses/([^/]+)/index.php$ /main/course_home/course_home.php?cDir=$1 last;
  703. rewrite ^/skill/(\d+)/user/(\d+)$ /main/badge/issued_all.php?skill=$1&user=$2 last;
  704. rewrite ^/badge/(\d+)/user/(\d+)$ /main/badge/issued_all.php?skill=$1&user=$2 last;
  705. try_files $uri @rewrite;
  706. }
  707. location /main {
  708. rewrite ^/main/admin/$ /main/admin/index.php last;
  709. }
  710. location ~ \.php$ {
  711. client_max_body_size 20M;
  712. try_files $uri /index.php$is_args$args;
  713. rewrite ^/certificates/$ /certificates/index.php?id=%1 last;
  714. rewrite ^/courses/([^/]+)/$ /main/course_home/course_home.php?cDir=$1 last;
  715. rewrite ^/courses/([^/]+)/index.php$ /main/course_home/course_home.php?cDir=$1 last;
  716. rewrite ^/session/([^/]+)/about/?$ /main/session/about.php?session_id=$1 last;
  717. rewrite ^/badge/([^/]+) /main/badge/issued.php?issue=$1 last;
  718. rewrite ^/main/exercice/(.+)$ /main/exercise/$1 last;
  719. rewrite ^/main/newscorm/(.+)$ /main/lp/$1 last;
  720. fastcgi_pass unix:/var/run/php5-fpm.sock;
  721. fastcgi_split_path_info ^(.+\.php)(/.*)$;
  722. include fastcgi_params;
  723. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  724. fastcgi_param HTTPS off;
  725. }
  726. # Serve static files directly
  727. location ~* \.(png|jpe?g|gif|ico|js|css|mp3|swf|flv|mp4|ogg|woff|woff2)$ {
  728. rewrite ^/courses/([^/]+)/course-pic85x85.png$ /app/courses/$1/course-pic85x85.png last;
  729. rewrite ^/courses/([^/]+)/course-pic.png$ /app/courses/$1/course-pic.png last;
  730. rewrite ^/courses/([^/]+)/scorm/(.*)$ /main/document/download_scorm.php?doc_url=/$2&cDir=$1 last;
  731. rewrite ^/courses/([^/]+)/document/(.*)$ /main/document/download.php?doc_url=/$2&cDir=$1 last;
  732. rewrite ^/courses/([^/]+)/work/(.*)$ /main/work/download.php?file=work/$2&cDir=$1 last;
  733. rewrite ^/courses/([^/]+)/upload/(.*)$ /app/courses/$1/upload/$2 last;
  734. # For all these media resources not treated by previous rewrites, give direct access (no permission check)
  735. rewrite ^/courses/(.*)$ /app/courses/$1 break;
  736. expires 30d;
  737. access_log off;
  738. try_files $uri @rewrite;
  739. }
  740. location ~ ~\.(ht|git){
  741. deny all;
  742. }
  743. location ^~ /tests/ {
  744. deny all;
  745. }
  746. </pre>
  747. <h3>IIS</h3>
  748. <div>
  749. L'utilisateur @ullfindsmit sur Github a été bien aimable en nous partageant la configuration suivante
  750. pour IIS, qu'il a testé au préalable. Ces règles sont basées sur les configurations ci-dessus et, bien
  751. que nous n'ayons pas testé la configuration nous-même, elle est suffisamment proche de la configuration
  752. d'Apache et de Nginx pour nous permettre de vous la suggérer ici:<br /><br />
  753. <pre>
  754. &lt;?xml version="1.0" encoding="UTF-8"?&gt;
  755. &lt;configuration&gt;
  756. &lt;system.webServer&gt;
  757. &lt;rewrite&gt;
  758. &lt;rules&gt;
  759. &lt;rule name="rule 1v" stopProcessing="true"&gt;
  760. &lt;match url="^certificates/$" /&gt;
  761. &lt;action type="Rewrite" url="/certificates/index.php?id=%1" /&gt;
  762. &lt;/rule&gt;
  763. &lt;rule name="rule 2v" stopProcessing="true"&gt;
  764. &lt;match url="^courses/([^/]+)/?$" /&gt;
  765. &lt;action type="Rewrite" url="/main/course_home/course_home.php?cDir={R:1}" appendQueryString="true" /&gt;
  766. &lt;/rule&gt;
  767. &lt;rule name="rule 3v" stopProcessing="true"&gt;
  768. &lt;match url="^courses/([^/]+)/index.php$" /&gt;
  769. &lt;action type="Rewrite" url="/main/course_home/course_home.php?cDir={R:1}" appendQueryString="true" /&gt;
  770. &lt;/rule&gt;
  771. &lt;rule name="rule 4v" stopProcessing="true"&gt;
  772. &lt;match url="^courses/([^/]+)/scorm/(.*)$" /&gt;
  773. &lt;action type="Rewrite" url="/main/document/download_scorm.php?doc_url=/{R:2}&amp;cDir={R:1}" appendQueryString="true" /&gt;
  774. &lt;/rule&gt;
  775. &lt;rule name="rule 5v" stopProcessing="true"&gt;
  776. &lt;match url="^courses/([^/]+)/document/certificates/(.*)$" /&gt;
  777. &lt;action type="Rewrite" url="/app/courses/{R:1}/document/certificates/{R:2}" appendQueryString="true" /&gt;
  778. &lt;/rule&gt;
  779. &lt;rule name="rule 6v" stopProcessing="true"&gt;
  780. &lt;match url="^courses/([^/]+)/document/(.*)$" /&gt;
  781. &lt;action type="Rewrite" url="/main/document/download.php?doc_url=/{R:2}&amp;cDir={R:1}" appendQueryString="true" /&gt;
  782. &lt;/rule&gt;
  783. &lt;rule name="rule 7v" stopProcessing="true"&gt;
  784. &lt;match url="^courses/([^/]+)/upload/([^/]+)/(.*)$" /&gt;
  785. &lt;action type="Rewrite" url="/main/document/download_uploaded_files.php?code={R:1}&amp;type={R:2}&amp;file={R:3}" appendQueryString="true" /&gt;
  786. &lt;/rule&gt;
  787. &lt;rule name="rule 8v" stopProcessing="true"&gt;
  788. &lt;match url="^courses/([^/]+)/work/(.*)$" /&gt;
  789. &lt;action type="Rewrite" url="/main/work/download.php?file=work/{R:2}&amp;cDir={R:1}" appendQueryString="true" /&gt;
  790. &lt;/rule&gt;
  791. &lt;rule name="rule 9v" stopProcessing="true"&gt;
  792. &lt;match url="^courses/([^/]+)/course-pic85x85.png$" /&gt;
  793. &lt;action type="Rewrite" url="/main/inc/ajax/course.ajax.php?a=get_course_image&amp;code={R:1}&amp;image=course_image_source" appendQueryString="true" /&gt;
  794. &lt;/rule&gt;
  795. &lt;rule name="rule 10v" stopProcessing="true"&gt;
  796. &lt;match url="^courses/([^/]+)/course-pic.png$" /&gt;
  797. &lt;action type="Rewrite" url="/main/inc/ajax/course.ajax.php?a=get_course_image&amp;code={R:1}&amp;image=course_image_large_source" appendQueryString="true" /&gt;
  798. &lt;/rule&gt;
  799. &lt;rule name="rule 11v" stopProcessing="true"&gt;
  800. &lt;match url="^courses/([^/]+)/(.*)$" /&gt;
  801. &lt;action type="Rewrite" url="/app/courses/{R:1}/{R:2}" appendQueryString="true" /&gt;
  802. &lt;/rule&gt;
  803. &lt;rule name="rule 12v" stopProcessing="true"&gt;
  804. &lt;match url="^session/(\d{1,})/about/?$" /&gt;
  805. &lt;action type="Rewrite" url="/main/session/about.php?session_id={R:1}" /&gt;
  806. &lt;/rule&gt;
  807. &lt;rule name="rule 13v" stopProcessing="true"&gt;
  808. &lt;match url="^badge/(\d{1,})" /&gt;
  809. &lt;action type="Rewrite" url="/main/badge/issued.php?issue={R:1}" /&gt;
  810. &lt;/rule&gt;
  811. &lt;rule name="rule 14v" stopProcessing="true"&gt;
  812. &lt;match url="^skill/(\d{1,})/user/(\d{1,})" /&gt;
  813. &lt;action type="Rewrite" url="/main/badge/issued_all.php?skill={R:1}&amp;user={R:2}" /&gt;
  814. &lt;/rule&gt;
  815. &lt;rule name="rule 15v" stopProcessing="true"&gt;
  816. &lt;match url="^badge/(\d{1,})/user/(\d{1,})" /&gt;
  817. &lt;action type="Rewrite" url="/main/badge/issued_all.php?skill={R:1}&amp;user={R:2}" /&gt;
  818. &lt;/rule&gt;
  819. &lt;rule name="rule 16v" stopProcessing="true"&gt;
  820. &lt;match url="^main/exercice/(.*)$" /&gt;
  821. &lt;action type="Rewrite" url="/main/exercise/{R:1}" appendQueryString="true" /&gt;
  822. &lt;/rule&gt;
  823. &lt;rule name="rule 17v" stopProcessing="true"&gt;
  824. &lt;match url="^main/newscorm/(.*)$" /&gt;
  825. &lt;action type="Rewrite" url="/main/lp/{R:1}" appendQueryString="true" /&gt;
  826. &lt;/rule&gt;
  827. &lt;rule name="rule 18v" stopProcessing="true"&gt;
  828. &lt;match url="^service/(\d{1,})$" /&gt;
  829. &lt;action type="Rewrite" url="/plugin/buycourses/src/service_information.php?service_id={R:1}" /&gt;
  830. &lt;/rule&gt;
  831. &lt;rule name="rule 19v" stopProcessing="true"&gt;
  832. &lt;match url="^([^/.]+)/?$" /&gt;
  833. &lt;action type="Rewrite" url="/user.php?{R:1}" /&gt;
  834. &lt;/rule&gt;
  835. &lt;rule name="rule 20v" stopProcessing="true"&gt;
  836. &lt;match url="^(tests|.git)" ignoreCase="true" /&gt;
  837. &lt;action type="Rewrite" url="/-" /&gt;
  838. &lt;/rule&gt;
  839. &lt;/rules&gt;
  840. &lt;/rewrite&gt;
  841. &lt;/system.webServer&gt;
  842. &lt;/configuration&gt;
  843. </pre>
  844. </div>
  845. <hr style="width: 100%; height: 2px;" />
  846. <p>
  847. <br />
  848. <br />
  849. Adresse de contact<br />
  850. Mail: info@chamilo.org<br />
  851. <br />
  852. </p>
  853. <hr />
  854. </div>
  855. <hr />
  856. <a href="http://validator.w3.org/check?uri=referer"><img src="//www.w3.org/Icons/valid-xhtml10-blue" alt="Valid XHTML 1.0 Transitional" style="margin: 1em; float: right;" height="31" width="88" /></a>
  857. <a href="http://jigsaw.w3.org/css-validator/">
  858. <img src="//jigsaw.w3.org/css-validator/images/vcss-blue" style="margin: 1em; float: right;" alt="Valid CSS" />
  859. </a>
  860. </body>
  861. </html>