Todos los artículos
Moodle

Cómo instalar Moodle 5.2 en Windows

10 de agosto de 2026 · 8 min de lectura

izon
rizon.agency
Cómo instalar Moodle 5.2 en Windows

¿Se puede instalar Moodle 5.2 en Windows?

Sí. Moodle 5.2 puede instalarse en Windows para pruebas, desarrollo, formación o uso interno pequeño. Para producción seria, Linux suele ser más sencillo de mantener porque Moodle se desarrolla y despliega sobre todo en pilas tipo LAMP.

La discusión Moodle.org “Moodle 5.2 Windows Install” tiene 54 respuestas y muestra el patrón: IIS, WAMP, versiones PHP y paquetes Windows. Windows puede funcionar, pero el camino tiene más trampas pequeñas.

Elige el camino correcto

ObjetivoMejor camino
Prueba local rápidaPaquete Windows de Moodle, XAMPP o WAMP
Aprender administración MoodleInstalación local Windows
Producción en Windows ServerIIS + FastCGI + PHP soportado + base soportada
LMS público que creceráVPS Linux o hosting Moodle gestionado

La página Installing Moodle dice que Moodle se desarrolla principalmente en Linux. La documentación IIS también señala que Apache tiene más apoyo de comunidad.

Requisitos Moodle 5.2

ComponenteMínimo Moodle 5.2
PHP8.3.0
MariaDB10.11.0
MySQL8.4
PostgreSQL16
Microsoft SQL Server2019
max_input_vars5000
Arquitectura PHP64 bits

En Windows, instala PHP de 64 bits. Con IIS, usa normalmente PHP Non Thread Safe con FastCGI.

Opción A: Moodle 5.2 en IIS

1. Activa IIS y CGI

En características de Windows, activa:

  • Internet Information Services
  • World Wide Web Services
  • Application Development Features
  • CGI

Comprueba después que http://localhost responde.

2. Instala PHP para FastCGI

Descarga una versión PHP compatible con Moodle 5.2 desde los builds oficiales de Windows. Extrae en una ruta estable:

C:\PHP

Instala el Visual C++ Redistributable que pida tu build PHP.

3. Registra PHP en IIS

En IIS Manager, añade un module mapping:

AjusteValor
Request path*.php
ModuleFastCgiModule
ExecutableC:\PHP\php-cgi.exe
NamePHP-FastCGI

En request restrictions, invoca el handler solo si la petición corresponde a un archivo o carpeta. Sube el timeout de FastCGI para que la instalación no muera a mitad.

4. Configura php.ini

Activa extensiones comunes:

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=opcache

Define:

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 = 1

Añade tu zona horaria real:

date.timezone = Europe/Madrid

5. Instala la base de datos

MariaDB o PostgreSQL son opciones habituales. Para MariaDB/MySQL:

CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

Da al usuario Moodle permisos solo sobre esa base.

6. Separa código y datos

Usa una estructura como:

C:\inetpub\moodle
C:\moodledata

El sitio IIS debe apuntar a:

C:\inetpub\moodle\public

no a la carpeta padre.

7. Configura documento por defecto y routing

Añade index.php como documento por defecto. Instala IIS URL Rewrite si hace falta. Después de instalar, ejecuta el check del router.

Si falla, lee Moodle 5.2: el router no está configurado correctamente.

Opción B: WAMP o XAMPP

Úsalo para una prueba local, no para producción pública.

  1. Usa PHP 8.3 o superior.
  2. Activa extensiones requeridas.
  3. Pon max_input_vars en 5000.
  4. Crea la base en utf8mb4.
  5. Mantén moodledata fuera de la carpeta web.
  6. Apunta el virtual host a public.
  7. Configura el router.

El error habitual es extraer Moodle en htdocs y visitar la carpeta padre. En Moodle 5.2, el virtual host debe apuntar a public.

Errores comunes en Windows

SíntomaCausa probable
El check de entorno bloqueaPHP, extensión o base no soportada
404 tras instalarRaíz apunta al padre y no a public
PHP se descargaHandler PHP no registrado
Instalador expiraTimeout PHP o FastCGI bajo
Subidas fallanLímites PHP, permisos o ruta temporal
Selector de archivos giraCaché, JavaScript, repositorio, router o permisos
Composer vendor directory not foundFalta vendor
Cron no correTarea programada no configurada

Para Composer, lee Moodle: Composer vendor directory not found.

No olvides cron

Moodle necesita cron para foros, finalización, notificaciones, limpieza, tareas programadas y tareas ad hoc. En Windows, usa el Programador de tareas con el php.exe correcto.

C:\PHP\php.exe C:\inetpub\moodle\admin\cli\cron.php

Ejecútalo una vez manualmente y confirma que termina.

FAQ

¿Moodle 5.2 está soportado en Windows?

Puede ejecutarse en Windows si cumple requisitos. Para instalaciones grandes, Moodle recomienda Linux o un sistema tipo Unix.

¿IIS o Apache en Windows?

IIS si necesitas integración Microsoft. Para producción Moodle común, Linux con Apache o Nginx suele ser más fácil.

¿Dónde debe apuntar IIS?

A C:\inetpub\moodle\public, no a C:\inetpub\moodle.

Escrito por Choaib Mouhrach

Fundador e ingeniero de software sénior

Diseño y desarrollo plataformas de aprendizaje a medida para organizaciones con procesos complejos de formación y certificación. En lugar de unir plugins y herramientas de terceros, creo sistemas adaptados a la forma real de trabajar de cada negocio, reduciendo la carga administrativa y mejorando la experiencia del alumnado.

Empezar

Tu producto de aprendizaje merece su propia plataforma.

Si quieres ofrecer una experiencia de aprendizaje construida en torno a tu producto, tus alumnos y tus objetivos, estás en el lugar correcto. Construimos plataformas que te dan el control y la flexibilidad para crecer sin límites.