Todo lo que necesitas para montar tu plataforma de aprendizaje online paso a paso
Moodle es una plataforma de aprendizaje en línea (LMS) de código abierto muy popular usada por universidades, escuelas y empresas para crear cursos virtuales y gestionar la formación online. Su instalación y configuración inicial puede parecer compleja, pero esta guía te ayudará a entender cada paso para que puedas tener Moodle funcionando en poco tiempo.
Antes de instalar Moodle, necesitas preparar tu servidor:
Ejemplo para Ubuntu (LAMP stack):
sudo apt update sudo apt install apache2 sudo apt install mysql-server sudo apt install php libapache2-mod-php php-mysql php-xml php-curl php-gd php-zip php-mbstring php-intl php-soap php-xmlrpc php-cli php-ldap php-ldap php-opcache php-pear php-bcmath
Luego habilita y arranca los servicios:
sudo systemctl enable apache2 sudo systemctl start apache2 sudo systemctl enable mysql sudo systemctl start mysql
Entra en la consola MySQL:
sudo mysql -u root -p
Luego ejecuta los siguientes comandos para crear la base de datos y el usuario:
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'TuContraseñaSegura'; GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser'@'localhost'; FLUSH PRIVILEGES; EXIT;
Visita la página oficial para descargar la última versión estable:
O usa wget para descargar directamente al servidor:
wget https://download.moodle.org/latest.zip
unzip latest.zip -d /var/www/html/
Esto extraerá la carpeta moodle
en el directorio público del servidor web.
Moodle requiere una carpeta para datos fuera del acceso público. Se recomienda crearla fuera de /var/www/html/
, por ejemplo:
sudo mkdir /var/moodledata sudo chown -R www-data:www-data /var/moodledata sudo chmod 770 /var/moodledata
Reemplaza www-data
por el usuario con que corre tu servidor web (apache o nginx).
Abre el navegador y entra en:
http://tu-ip-o-dominio/moodle
Verás un asistente de instalación. Sigue estos pasos:
/var/moodledata
).Moodle necesita ejecutar tareas periódicas. Configura el cron así:
# Edita crontab para el usuario www-data o el usuario del servidor web sudo crontab -u www-data -e # Añade esta línea para que se ejecute cada minuto * * * * * /usr/bin/php /var/www/html/moodle/admin/cli/cron.php >/dev/null 2>&1
Para seguridad, activa HTTPS usando Let's Encrypt o un certificado SSL válido.
sudo apt install certbot python3-certbot-apache sudo certbot --apache -d tudominio.com
config.php
El archivo config.php
en la raíz de Moodle contiene configuraciones clave. Ejemplo:
$CFG->wwwroot = 'https://tudominio.com/moodle'; $CFG->dataroot = '/var/moodledata'; $CFG->dbtype = 'mysqli'; $CFG->dbname = 'moodle'; $CFG->dbuser = 'moodleuser'; $CFG->dbpass = 'TuContraseñaSegura'; $CFG->dbhost = 'localhost'; $CFG->prefix = 'mdl_';
moodledata
y archivos del código.moodledata
: debe estar fuera del acceso web.