¿Puede Moodle 5.2 funcionar en hosting compartido?
10 de agosto de 2026 · 7 min de lectura
La respuesta honesta
Moodle 5.2 puede funcionar en hosting compartido solo si el host te da suficiente control sobre la raíz web, versión PHP, base de datos, reglas de router, Composer, cron y seguridad de moodledata. Muchos planes compartidos fallan al menos una de esas pruebas.
La demanda del foro Moodle.org es clara: “Shared Hosting problem [resolved]” tiene 77 respuestas, además de discusiones sobre GoDaddy, Hostinger, cPanel, subcarpetas, document roots y routing.
Los síntomas son muy concretos: /admin/index.php devuelve 404, Moodle dice que el directorio raíz no debe ser público, o config.php avisa de que $CFG->wwwroot no debe terminar en /public. La carpeta public debe ser la publicada, pero /public no debe aparecer como parte visible de la URL Moodle.
Por qué Moodle 5.x es más duro con hosting compartido
Moodle 5.1 introdujo el directorio public. La guía de actualización 5.2 dice que el servidor web debe servir Moodle desde public, dejando configuración y archivos sensibles fuera.
En un VPS:
DocumentRoot /var/www/moodle/publicEn hosting compartido, el dominio principal suele estar atado a:
public_htmlAhí nace el problema. Si el host no puede apuntar el dominio a moodle/public, necesitas symlinks, subdominios, alias o reglas de reescritura.
Checklist antes de comprar o actualizar
| Requisito | Por qué importa |
|---|---|
¿Puedo apuntar el dominio a moodle/public? | Moodle 5.x espera exponer solo public |
| ¿Puedo crear symlinks? | Útil si public_html está bloqueado |
| ¿Hay PHP 8.3 o 8.4 web y CLI? | Moodle 5.2 requiere PHP 8.3+ |
| ¿Están las extensiones PHP necesarias? | sodium, intl, mbstring, soap, etc. |
| ¿Hay base soportada? | MariaDB 10.11, MySQL 8.4, PostgreSQL 16 o SQL Server |
| ¿Hay Composer con el PHP correcto? | Puede faltar vendor |
¿Puedo usar .htaccess? | Necesario si no hay FallbackResource |
| ¿Cron corre cada minuto? | Moodle depende de tareas programadas |
¿moodledata puede vivir fuera de web? | Seguridad básica |
| ¿Puedo ver logs? | Sin logs, depurar es adivinar |
Si el host no responde claro, asume que perderás tiempo.
cPanel, Hostinger, GoDaddy y subdominios
La solución típica en cPanel es crear un addon domain o subdominio con raíz editable:
moodle.example.com -> /home/account/moodle/publicEl padre queda aquí:
/home/account/moodley solo se expone public.
Algunos paneles tipo Hostinger permiten definir la carpeta pública. Algunos planes GoDaddy son más restrictivos. Importa menos la marca que los controles exactos del plan.
Si el host no permite cambiar la raíz
| Opción | Cuándo sirve | Riesgo |
|---|---|---|
Symlink de public_html a moodle/public | El host permite symlinks | Puede afectar otros sitios |
| Addon domain o subdominio | Permite raíz personalizada | Puede cambiar la URL |
Reglas .htaccess | Rewrites bien soportadas | Más frágil |
No lo soluciones haciendo público todo Moodle.
Router y Composer en hosting compartido
La documentación Configuring the Router cubre FallbackResource, try_files y reglas de reescritura. En hosting compartido, normalmente te queda .htaccess. Ponlo en public.
Si falla el check, lee Moodle 5.2: el router no está configurado correctamente.
Para Composer, Moodle puede necesitar:
composer install --no-dev --classmap-authoritativePreguntas:
- ¿hay SSH?
- ¿existe Composer?
- ¿usa PHP 8.3 o 8.4?
- ¿puedes subir un artefacto completo con
vendor?
Si no, lee Moodle: Composer vendor directory not found.
Hosting compartido frente a VPS
| Necesidad | Hosting compartido | VPS |
|---|---|---|
| Raíz web | A veces bloqueada | Control total |
| Router | .htaccess o límites de panel | Apache/Nginx completo |
| PHP-FPM | Definido por host | Control total |
| Base | Versión impuesta | Control total |
| Composer | Limitado | Control total |
| Cron | Límites de panel | Cron del sistema |
| Logs | Parciales | Completos |
Si Moodle sostiene alumnos de pago, formación regulada o una escuela, el control operativo suele justificar VPS o hosting Moodle gestionado.
FAQ
¿Moodle 5.2 puede correr en cPanel?
Sí, si puedes apuntar dominio o subdominio a moodle/public, usar PHP/base soportados, reescrituras, cron y moodledata privado.
¿GoDaddy o Hostinger?
Depende del plan. Comprueba controles reales, no solo la marca.
¿Es seguro un symlink a public?
Puede serlo si apunta solo a public. No expongas el directorio padre.
¿Debería usar MoodleCloud?
Úsalo si quieres Moodle sin administrar servidor. Usa VPS si quieres control.

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.
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.