Documentation Moodle : Foire Aux Questions (FAQ)

# Foire Aux Questions (FAQ)

Cette page propose les réponses à quelques-unes des questions les plus fréquemment posées par les personnes qui installent Moodle. Si vous avez suivi les instructions d'installation mais que vous avez encore un problème, cette page est vraisemblablement le meilleur endroit où trouver de l'aide.

Si vous ne trouvez pas votre réponse ici, essayez le cours Using Moodle sur le site moodle.org. Commencez par chercher avec quelques mots clefs dans les forums, pour voir si votre problème a déjà été discuté. Si vous ne trouvez rien, essayez de poser votre question dans le forum approprié. En principe, il y aura quelqu'un qui saura vous aider.

Si vous avez assayé sans succès plusieurs solutions et que vous vous trouvez derrière un pare-feu (firewall), il peut être judicieux de reconfigurer votre pare-feu pour être sûr qu'il ne bloque pas une fonction requise ou une communication nécessaire. Les pare-feu ne causent que très rarement des problèmes avec Moodle, mais lorsqu'ils sont mal configurés, ils sont parfois responsables de fonctionnalités réduites.

Utilisez la liste ci-dessous pour aller directement à la réponse correspondante.

Quand je veux accéder à un fichier ou faire afficher un fichier que j'ai déposé (téléchargé), une erreur « File not found » survient.

Est-ce que PHP est installé et si oui quelle version ?

Pourquoi toutes mes pages sont vides ?

Mes pages affichent des erreurs comme : « call to undefined function: get_string() ».

Pourquoi obtiens-je toujours des messages mentionnant « headers already sent » ?

J'obtiens toujours cette erreur : « Failed opening required '/web/moodle/lib/setup.php' ».

Les textes que j'ajoute et qui contiennent une apostrophe (') ou des guillemets droits (") causent des erreurs ou alors sont transcrits avec une barre oblique.

J'obtiens continuellement des erreurs avec « session_start ».

Quand je veux afficher la page d'administration, on me dit de modifier « $CFG->dirroot » !

Je me connecte, mais le lien pour se connecter ne change pas, alors que suis effectivement dans Moodle et peux naviguer librement dans le site.

Quand j'essaie d'ajouter une ressource, je reçois des messages d'erreur.

Pendant le processus de mise en place initial de Moodle, je n'ai pas eu besoin de créer un compte administrateur !

Je ne peux pas me connecter à mon site Moodle : je reste coincé sur la page de connexion.

Comment faire une copie de sauvegarde de mon site Moodle ?

Pourquoi mon site Moodle n'affiche pas correctement l'heure et la date ?

Aucune copie des messages des forums n'est envoyée par courriel.

### Quand je veux accéder à un fichier ou faire afficher un fichier que j'ai déposé (téléchargé), une erreur « File not found » survient.

Par exemple : Not Found: The requested URL /moodle/file.php/2/myfile.jpg was not found on this server.

Votre serveur web doit être configuré de manière que la partie de l'URL après le nom du script soit passée directement au script. Ce réglage est en général activé par défaut sur Apache 1, mais désactivé sur Apache 2. Pour l'activer, ajoutez cette ligne à votre fichier httpd.conf, ou à un fichier .htaccess dans votre dossier moodle (voir pour plus de détails le Guide d'installation) :

AcceptPathInfo on

Il est à noter que cela ne fonctionnera QUE pour Apache version 2.x.

Si vous avez ce problème et n'utilisez pas Apache 2 (c'est très improbable), vous pouvez indiquer à Moodle d'utiliser une autre méthode. Les inconvénients sont une legère perte de performance pour vos utilisateurs et qu'il sera impossible d'utiliser des liens relatifs dans vos ressources HTML.

Pour utiliser cette alternative, connectez-vous comme administrateur, allez sur la page « Paramètres techniques » et modifiez le réglage pour « slasharguments ». Le problème devrait alors être réglé.

### Est-ce que PHP est installé et si oui quelle version ?

Créez dans votre site web un nouveau fichier appelé info.php, contenant le texte suivant uniquement, et appelez-le depuis votre navigateur :

<?PHP phpinfo() ?>

Si rien ne se passe (page blanche), PHP n'est pas installé. Voyez le Guide d'installation pour des informations sur son installation.

### Pourquoi toutes mes pages sont vides ?

Vérifiez que la variable dirroot de votre fichier config.php soit réglée correctement. Vous devez utiliser un chemin absolu et complet, par exemple :

$CFG->dirroot = "d:\inetpub\sites\www.yoursite.com\web\moodle";

Pour le système d'exploitations Redhat Linux, veuillez consulter : Redhat Linux

### Mes pages affichent des erreurs comme : « call to undefined function: get_string() ».

Si vous voyez des messages comme ceux-ci :

Parse error: parse error, unexpected T_VARIABLE in c:\program files\easyphp\www\moodle\config.php on line 94
Fatal error: Call to undefined function: get_string() in c:\program files\easyphp\www\moodle\mod\resource\lib.php on line 11

il est probable que vous avez oublié un point-virgule ou un guillemet à la fin d'une ligne de votre fichier config.php (avant la ligne 94 dans cet exemple).

Une autre raison possible est la suivante : vous avez modifié config.php dans un programme de traitement de texte comme Word, et l'avez enregistré en format HTML au lieu du format texte.

### Pourquoi obtiens-je toujours des messages mentionnant « headers already sent » ?

Si vous voyez des messages comme celui-ci :

Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/lib/moodlelib.php on line 1322

Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/lib/moodlelib.php on line 1323

Warning: Cannot add header information - headers already sent by (output started at /webs/moodle/config.php:87) in /webs/moodle/login/index.php on line 54

Vous avez vraisemblablement des lignes ou des espaces vides après la balise ?> finale de votre fichier config.php. Certains éditeurs de texte (comme Notepad sous Windows) ajoutent de tels caractères. Essayez de supprimer totalement ces caractères avec un autre programme.

### J'obtiens toujours cette erreur : « Failed opening required '/web/moodle/lib/setup.php' ».

Dans votre fichier config.php, le réglage de la variable dirroot doit être le chemin complet du dossier du serveur web, depuis le sommet de la hiérarchie (la racine) du disque dur.

Parfois, certains utilisent le chemin de leur dossier personnel, ou encore le chemin relatif du dossier du serveur web.

### Les textes que j'ajoute et qui contiennent une apostrophe (') ou des guillemets droits (") causent des erreurs ou alors sont transcrits avec une barre oblique.

Les problèmes causés par des apostrophes sont dus à un réglage incorrect des « magic quotes ». Moodle nécessite les réglages suivants (qui sont habituellement corrects par défaut) :

magic_quotes_gpc = On
magic_quotes_runtime = Off

Pour plus de détails, référez-vous à la section du guide d'installation sur la configuration du serveur web.

### J'obtiens continuellement des erreurs avec « session_start ».

Si vous voyez des messages comme ceux-ci :

Warning: session_start() [function.session-start]: open(/tmp\sess_d40f380d37d431fc1516e9a895ad9ce0, O_RDWR) failed: No such file or directory (2) in G:\web\moodle\lib\setup.php on line 123

Warning: session_start() [function.session-start]: open(/tmp\sess_d40f380d37d431fc1516e9a895ad9ce0, O_RDWR) failed: No such file or directory (2) in G:\web\moodle\lib\setup.php on line 123

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at G:\web\moodle\lib\setup.php:1) in G:\web\moodle\lib\setup.php on line 123

Ces messages indiquent que PHP n'arrive pas à enregistrer des fichiers de « session » sur votre disque dur (dans un dossier appelé /tmp). Cela signifie habituellement que ce dossier /tmp N'EXISTE PAS sur votre serveur. C'est en général le cas sous Windows.

Pour corriger ce problème, il faut modifier ce réglage de PHP en le faisant pointer vers un dossier existant. Il suffit pour cela d'ajouter au fichier php.ini la ligne :

session.save_path = C:\temp

ou alors de taper dans un fichier .htaccess de votre dossier moodle la ligne :

php_value session.save_path "/home/moodle/sessions"

### Quand je veux afficher la page d'administration, on me dit de modifier « $CFG->dirroot » !

Si vous voyez des messages comme ceux-ci dans Moodle 1.0.9 :

Please fix your settings in config.php: You have: $CFG->dirroot = "/home/users/fred/public_html/moodle"; but it should be: $CFG->dirroot = "";

c'est que vous êtes victime d'un petit bogue survenant sur certains serveurs. Le problème est dû au mécanisme de vérification des erreurs, et non au chemin du fichier lui-même. Pour corriger ce problème, localisez cette ligne (la ligne 66) du fichier admin/index.php :

if ($dirroot != $CFG->dirroot) {

et remplacez-la par celle-ci :

if (!empty($dirroot) and $dirroot != $CFG->dirroot) {

### Je me connecte, mais le lien pour se connecter ne change pas, alors que suis effectivement dans Moodle et peux naviguer librement dans le site.

Vérifiez que l'URL spécifié dans le réglage CFG->wwwroot est exactement identique à celui que vous utilisez pour accéder au site.

### Quand j'essaie d'ajouter une ressource, je reçois des messages d'erreur.

En admettant que vous utilisez Apache, il est probable que votre réglage de $CFG->wwwroot dans le fichier config.php est différent de l'URL que vous utilisez pour accéder au site. Essayez aussi de désactiver le réglage « secureforms » dans la configuration des paramètres du site.

### Pendant le processus de mise en place initial de Moodle, je n'ai pas eu besoin de créer un compte administrateur !

Ceci est un bogue connu de Moodle jusqu'à la version 1.0.9. Le bogue est corrigé dans la version 1.1.

Ce bogue n'atteint pas tous le monde. Il ne survient que si la personne qui installe Moodle a dans son navigateur un cookie d'un autre site, dont le nom est « user », « admin » ou « teacher ».

Pour corriger rapidement ce problème, il suffit de supprimer ces cookies de votre navigateur avant de procéder à l'installation (peut-être avec un autre navigateur), ou de modifier le fichier moodle/admin/user.php en y insérant ces lignes (au début du fichier) :

unset($user);
unset($admin);
unset($teacher);

Une fois ces corrections effectuées, il serait de judicieux d'effacer toutes les tables de votre base de données et de réinstaller Moodle depuis le début.

### Je ne peux pas me connecter à mon site Moodle : je reste coincé sur la page de connexion.

La cause principale de ce problème est que votre ordinateur (et non le serveur sur lequel est installé Moodle) a une programme pare-feu (firewall) actif, qui filtre des informations (referrer) de votre navigateur. Voici quelques instructions (en anglais) pour corriger cela avec Norton firewall.

L'administrateur du serveur Moodle peut aussi corriger cela en réglant sur la page de configuration des paramètres le réglage « secureforms » sur « Non ».

Une autre cause possible de ce problème est une mauvaise configuration des sessions sur le serveur. Vous pouvez tester cela en appelant le script http://yourserver/moodle/lib/session-test.php dans votre navigateur.

### Comment faire une copie de sauvegarde (backup) de mon site Moodle ?

Il y a deux choses à copier pour faire une copie de sauvegarde de votre site : la base de données et les fichiers déposés. Les fichiers de Moodle sont moins importants, puisque vous pouvez toujours en télécharger une copie au besoin.

Les copies peuvent se faire de multiples façons. Voici une procédure détaillée que vous pouvez utiliser sous Unix pour copier la base de données. Mettre en place un script qui ferait cela automatiquement chaque jour à l'aide de cron est une bonne idée.

cd /my/backup/directory

mv moodle-database.sql.gz moodle-database-old.sql.gz

mysqldump -h example.com -u myusername --password=mypassword -C -Q -e -a mydatabasename > moodle-database.sql

gzip moodle-database.sql

Pour les fichiers déposés, vous pouvez utiliser rsync, afin de copier sur un autre ordinateur uniquement les fichiers ayant été modifiés :

rsync -auvtz --delete -e ssh mysshusername@example.com:/my/server/directory /my/backup/directory/

### Pourquoi mon site Moodle n'affiche pas correctement l'heure et la date ?

Chaque langue nécessite un code de langue spécifique (appelé un locale) qui permet d'afficher les heures et dates dans le format adéquat. Les fichiers de langue contiennent un certain nombres de codes standard, mais ceux-ci ne fonctionnent pas toujours sur les serveurs Windows.

Vous trouverez le fichier locale correct pour Windows sur ces deux pages : Language codes et Country/region codes.

Ces nouveaux fichiers locale peuvent être entrés sur la page de configuration des paramètres de Moodle. Ils remplaceront ceux qui sont fournis dans les fichiers de la langue choisie.

### Aucune copie des messages des forums n'est envoyée par courriel.

Vous devez mettre en place un cron, si vous désirez que Moodle envoie automatiquement des copies des messages des forums, journaux, devoirs, etc. Ce même processus effectue en outre certaines tâches de nettoyage, comme supprimer les utilisateurs non confirmés, désinscrire les anciens étudiants des cours, etc.

Le principe est de mettre en place un processus qui appelle régulièrement le fichier http://yoursite/admin/cron.php. Référez-vous à la section sur le cron du Guide d'installation.

Un conseil : commencez avec les réglages par défaut des paramètres de configuration de Moodle. Laissez vide l'hôte SMTP (smtphost). Un tel réglage fonctionne pour la majorité des utilisateurs.

Proposer une nouvelle question (merci d'inclure la réponse !)

Merci à John Eyre pour l'aide dans la maintenance de cette FAQ.

Documentation Moodle

Version: $Id$