Installer Moodle 5.2 sur Windows
10 août 2026 · 8 min de lecture
Peut-on installer Moodle 5.2 sur Windows ?
Oui. Moodle 5.2 peut tourner sur Windows pour des tests, du développement, de la formation ou un petit usage interne. Pour une production sérieuse, Linux reste souvent le choix le plus simple à maintenir, car Moodle est surtout déployé sur des piles de type LAMP.
La discussion Moodle.org « Moodle 5.2 Windows Install » compte 54 réponses et illustre bien le sujet : IIS, WAMP, versions PHP et confusion sur les paquets Windows. Windows fonctionne, mais le chemin contient plus de petits pièges.
Choisissez la bonne approche
| Objectif | Chemin recommandé |
|---|---|
| Test local rapide | Paquet Windows Moodle, XAMPP ou WAMP |
| Apprendre l’administration Moodle | Installation locale Windows |
| Production sur Windows Server | IIS + FastCGI + PHP supporté + base supportée |
| LMS public et croissant | VPS Linux ou hébergement Moodle managé |
La documentation Installing Moodle rappelle que Moodle est principalement développé sur Linux avec Apache, PHP et PostgreSQL/MySQL/MariaDB. La page IIS note aussi que le support communautaire est plus fort côté Apache.
Prérequis Moodle 5.2
| Composant | Minimum Moodle 5.2 |
|---|---|
| PHP | 8.3.0 |
| MariaDB | 10.11.0 |
| MySQL | 8.4 |
| PostgreSQL | 16 |
| Microsoft SQL Server | 2019 |
max_input_vars | 5000 |
| Architecture PHP | 64 bits |
Sur Windows, installez PHP 64 bits. Avec IIS, utilisez généralement PHP Non Thread Safe via FastCGI.
Option A : Moodle 5.2 avec IIS
1. Activez IIS et CGI
Dans les fonctionnalités Windows, activez :
- Internet Information Services
- World Wide Web Services
- Application Development Features
- CGI
Puis vérifiez que http://localhost répond.
2. Installez PHP pour FastCGI
Téléchargez une version PHP compatible Moodle 5.2 depuis les builds Windows officiels. Décompressez-la dans un chemin stable :
C:\PHPInstallez aussi le redistribuable Visual C++ requis par votre build PHP.
3. Enregistrez PHP dans IIS
Dans IIS Manager, ajoutez un mappage de module :
| Paramètre | Valeur |
|---|---|
| Request path | *.php |
| Module | FastCgiModule |
| Executable | C:\PHP\php-cgi.exe |
| Name | PHP-FastCGI |
Dans les restrictions, exécutez le handler seulement si la requête correspond à un fichier ou dossier. Augmentez le timeout FastCGI pour éviter que l’installation ne s’arrête au milieu.
4. Configurez php.ini
Activez les extensions courantes :
extension=curl
extension=fileinfo
extension=gd
extension=intl
extension=mbstring
extension=mysqli
extension=openssl
extension=pdo_mysql
extension=soap
extension=sodium
extension=zip
zend_extension=opcacheRéglez ensuite :
max_input_vars = 5000
upload_max_filesize = 128M
post_max_size = 128M
memory_limit = 256M
max_execution_time = 300
cgi.force_redirect = 0
fastcgi.impersonate = 1Ajoutez votre fuseau horaire réel :
date.timezone = Europe/Paris5. Installez la base de données
MariaDB et PostgreSQL sont des choix courants sur Windows. Pour MariaDB/MySQL, créez la base en utf8mb4 :
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;6. Séparez code et données
Utilisez une structure comme :
C:\inetpub\moodle
C:\moodledataLe site IIS doit pointer vers :
C:\inetpub\moodle\publicpas vers le dossier parent.
7. Configurez le document par défaut et le routage
Ajoutez index.php comme document par défaut. Installez le module IIS URL Rewrite si nécessaire. Après l’installation, lancez le contrôle système du routeur.
Si le routeur échoue, consultez Moodle 5.2 : routeur mal configuré.
Option B : WAMP ou XAMPP
Utilisez WAMP/XAMPP pour un site local, pas pour un LMS public.
- Choisissez une pile avec PHP 8.3 ou plus récent.
- Activez les extensions PHP nécessaires.
- Mettez
max_input_varsà 5000. - Créez la base en
utf8mb4. - Gardez
moodledatahors du dossier web. - Pointez l’hôte virtuel vers
public. - Configurez le routeur.
L’erreur fréquente est de décompresser Moodle dans htdocs et de visiter directement le dossier parent. Pour Moodle 5.2, la racine doit être public.
Erreurs Windows courantes
| Symptôme | Cause probable |
|---|---|
| Contrôle environnement bloquant | PHP, extension ou base non supportée |
| 404 après installation | Site pointé vers le parent au lieu de public |
| PHP téléchargé au lieu d’être exécuté | Handler PHP absent |
| Installation qui expire | Timeout FastCGI ou PHP trop bas |
| Téléversements en échec | Limites PHP, permissions ou chemin temporaire |
| Sélecteur de fichiers bloqué | Cache, JavaScript, dépôt, routeur ou permissions |
Composer vendor directory not found | Dépendances absentes |
| Cron ne tourne jamais | Tâche planifiée Windows non configurée |
Pour Composer, lisez Moodle Composer vendor directory not found.
N’oubliez pas cron
Moodle a besoin de cron pour les messages, notifications, tâches planifiées, achèvements et nettoyages. Sur Windows, configurez le Planificateur de tâches avec le bon php.exe.
C:\PHP\php.exe C:\inetpub\moodle\admin\cli\cron.phpLancez-le une fois manuellement et vérifiez qu’il se termine.
FAQ
Moodle 5.2 est-il supporté sur Windows ?
Il peut tourner sur Windows si le serveur respecte les exigences. Pour les grandes installations, Moodle recommande plutôt Linux ou un système Unix-like.
IIS ou Apache sur Windows ?
IIS si vous avez besoin d’intégration Microsoft. Pour la production Moodle classique, Linux avec Apache ou Nginx est généralement plus simple.
Où doit pointer IIS ?
Vers C:\inetpub\moodle\public, pas vers C:\inetpub\moodle.

Écrit par Choaib Mouhrach
Fondateur et ingénieur logiciel senior
Je conçois et développe des plateformes d’apprentissage sur mesure pour les organisations dont les parcours de formation et de certification sont complexes. Plutôt que d’assembler des plugins et des outils tiers, je crée des systèmes adaptés au fonctionnement réel de chaque activité, afin de réduire la charge administrative et d’améliorer l’expérience des apprenants.
Votre produit d'apprentissage mérite sa propre plateforme.
Si vous voulez offrir une expérience d'apprentissage construite autour de votre produit, de vos apprenants et de vos objectifs, vous êtes au bon endroit. Nous construisons des plateformes qui vous donnent le contrôle et la flexibilité pour grandir sans limites.