Ludovic ROLAND

Blog technique sur mes expériences de développeur.

Moodle: Impossible de définir le mot de passe administrateur

20 décembre 2020

Situation sanitaire oblige, beaucoup d’établissements de l’enseignement supérieur mettent en place une plateforme leur permettant d’intéragir au mieu, à distance, avec leurs étudiants. Dans un grand nombre de cas, c’est la plateforme Moodle qui est choisie.

En effet, Moodle est actuellement la plateforme d’enseignement en ligne (LMS – Learning Management System) la plus répandue. Sa modularité et sa grande richesse fonctionnelle lui permettent de s’adapter à toutes sortes d’utilisations pédagogiques.

C’est dans ce cadre que j’ai récemment eu besoin d’installer cette plateforme sur un hébernement mutualisé 1&1 Ionos. Lorsque l’on souhaite installer Moodle chez 1&1 Ionos, deux possibilités s’offrent à nous :

  • faire une installation manuelle ;
  • faire une installation automatique à travers l’app center.

Si l’on choisit une installation automatique à travers l’app center, généralement tout se passe bien. Ce n’est pas forcément le cas lorsque l’on fait le choix d’une installation manuelle.

Le problème survient généralement dans le parcours de configuration. Souvent, si l’on en croit les posts internet, le Javascript et le CSS est complètement cassé au moment de la configuration du compte administrateur. Ce soucis rend par exemple impossible la saisie du mot de passe administrateur.

Pour corriger ce problème, il convient d’apporter une petite modification au code du fichier config.php.

Un simple ajout est nécessaire, celui de la ligne : $CFG->slasharguments = false;

Le fichier complet doit alors ressembler à ça :

<?php  // Moodle configuration file

unset($CFG);
global $CFG;
$CFG = new stdClass();

$CFG->slasharguments = false;

$CFG->dbtype    = 'mysqli';
$CFG->dblibrary = 'native';
$CFG->dbhost    = 'XXXXX.hosting-data.io';
$CFG->dbname    = 'dbsXXXX';
$CFG->dbuser    = 'dbuXXXX';
$CFG->dbpass    = 'XXXX';
$CFG->prefix    = 'mdl_';
$CFG->dboptions = array (
  'dbpersist' => 0,
  'dbport' => XXXX,
  'dbsocket' => '',
  'dbcollation' => 'utf8mb4_unicode_ci',
);

$CFG->wwwroot   = 'https://XXXX.fr';
$CFG->dataroot  = '/homepages/XXXX/';
$CFG->admin     = 'xxxx';

$CFG->directorypermissions = 0777;

require_once(__DIR__ . '/lib/setup.php');

// There is no php closing tag in this file,
// it is intentional because it prevents trailing whitespace problems!

Commentaires