Moodle es una plataforma de aprendizaje diseñada para brindarles a los educadores, administradores y estudiantes un único sistema sólido, seguro e integrado para crear entornos de aprendizaje personalizados.
Se utiliza en muchos entornos, desde la educación, el aprendizaje electrónico hasta las pruebas de certificación.
Personalmente, lo usaré todos los días para enseñar a mis alumnos en un curso de sistemas operativos y tanto a los profesores como a los alumnos les encantará.
En este tutorial aprenderemos a instalarlo como sitio web dentro de ISPConfig, también con certificado SSL de let's Encrypt.
El tutorial está basado en Debian 8, pero también debería funcionar bien con Ubuntu y otras distribuciones compatibles con ISPConfig.
Entonces, ¿cuáles son los requisitos previos antes de comenzar?
- ISPConfig instalado (esta guía debería estar bien https://www.howtoforge.com/tutorial/perfect-server-debian-8-4-jessie-apache-bind-dovecot-ispconfig-3-1/ )
- DNS configurado correctamente para apuntar a su sitio (para nuestra prueba usamos curso.servisys.it como referencia del ejemplo), esto es necesario para la correcta configuración de Let's Encrypt
1. Configurar el DNS
En nuestro ejemplo, dijimos, usaremos el dominio curso.servisys.it, así que cuando vayamos a abrir nuestro sitio Moodle usaremos https://curso.servisys.it, así que para configurar el DNS. Vaya a la pestaña DNS en ISPConfig y edite su DNS para que se parezca a la siguiente imagen:
Atención para seleccionar un tipo de registro A. Este es un paso muy importante, porque let's encrypt usa el registro A para generar el certificado SSL.
Si administra su DNS en un proveedor externo, deberá crear el mismo tipo de registro allí.
2. Crear el sitio web
Ahora vaya a la pestaña Sitio web en ISPConfig y cree un nuevo sitio web, llamado como la configuración de DNS anterior, editando las siguientes opciones:
Auto-subdominio:en mi caso he cambiado de www. a ninguno porque mi dominio es curso.servisys.it. Si lo configura en www, la automatización let's encrypt intentará generar un certificado para www.course.servisys.it y fallará. Así que presta atención a esta opción.
SSL:habilitar para SSL.
Let's Encrypt:sí, queremos generar un certificado con esto.
PHP:Fastcgi funciona bien para mí.
Ahora haga clic en guardar y espere, ese certificado se emitirá correctamente.
Espere unos minutos e intente abrir su sitio web, en mi caso https://course.servisys.it, si todo está bien, verá la barra verde.
3. Creación de base de datos
Vamos a crear un usuario de base de datos y una base de datos para usar con moodle.
Vaya a la pestaña de sitios, luego a Usuarios de la base de datos> nuevo usuario.
Seleccione el cliente asociado a él, elija un nombre y una contraseña, algo como esto:
Toma nota de:
- Usuario de la base de datos
- Contraseña
Vuelva a la pestaña Sitios, y ahora elija Bases de datos, luego Agregar nueva base de datos, seleccione su sitio (courses.serverisy.it), elija un nombre de base de datos y seleccione el usuario creado anteriormente, y haga clic en guardar. Algo como la siguiente captura de pantalla:
4. Modificar la configuración de MySql
La configuración predeterminada de mysql necesita algunas pequeñas modificaciones para funcionar con Moodle. Tienes que editar el archivo:
nano /etc/mysql/my.cnf
y al principio, añade la línea roja
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
default-character-set = utf8mb4
siempre en el mismo archivo, vaya un poco hacia abajo, antes de que [mysqldump] comience la declaración, y nuevamente agregue las líneas rojas
#Moodle - Matteo
innodb_file_format = Barracuda
innodb_file_per_table = 1
innodb_large_prefix
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
Estas modificaciones son necesarias porque son requisitos previos para instalar Moodle, o durante la instalación no le permitirá continuar con la instalación.
Después de eso, reinicie MySql con:
/etc/init.d/mysql restart
5. Preparando la instalación de Moodle
Ahora estamos listos para preparar la instalación de Moodle, lo haremos desde la línea de comandos porque es más rápido que FTP :)
Vaya a esta página y seleccione la instalación que se adapte a sus necesidades, en un entorno de producción le sugiero que use la versión estable. En el momento en que escribimos, es el 3.2.2.
Entonces, desde la línea de comandos, vaya al directorio web de su sitio, en mi caso, estos son los comandos:
cd /var/www/course.servisys.it/web
rm index.html
wget https://download.moodle.org/download.php/direct/stable32/moodle-3.2.2.tgz
tar -zxvf moodle-3.2.2.tgz
cp -pr moodle/* ./
cp -pr moodle/.* ./
cuando use el comando cd, obviamente cámbielo por el nombre de su sitio.
Hemos eliminado la página index.html predeterminada, ya que queremos que la primera página del servidor sea index.php.
Después de eso, necesitamos corregir la propiedad de los archivos, para adaptarnos a nuestros usuarios y grupos, para saber cuál es el correcto para usted, simplemente inicie un
ls -al
deberías ver muchos archivos, y algunos del cliente web* del usuario continuo*, en mi caso:
drwxr-xr-x 18 1005 1005 4096 mar 11 22:16 report
drwxr-xr-x 24 1005 1005 4096 mar 11 22:16 repository
-rwxr-xr-- 1 web42 client1 14 apr 13 17:25 robots.txt
drwxr-xr-x 2 1005 1005 4096 mar 11 22:16 rss
drwxr-xr-x 7 1005 1005 4096 mar 11 22:16 search
drwxr-xr-x 2 web42 client1 4096 apr 13 17:25 stats
drwxr-xr-x 5 1005 1005 4096 mar 11 22:16 tag
-rw-r--r-- 1 1005 1005 615 mar 11 22:16 tags.txt
drwxr-xr-x 6 1005 1005 4096 mar 11 22:16 theme
como puede ver, mi usuario es web42 y mi grupo es client1, así que ahora corrija el permiso con:
chown -R web42:client1 *
chown -R web42:client1 .*
y corregir el permiso de dirs
chown root:root stats/ error/
luego vamos a crear un directorio moodledata no accesible públicamente, para hacerlo simplemente créelo en el directorio privado.
mkdir ../private/moodledata
chown -R web42:client1 ../private/moodledata
6. Instalación web de Moodle
¡Aquí vamos! Ahora podemos comenzar el último paso de la instalación, abra su navegador, debería obtener una página similar a esta cuando abra la URL del sitio web:
Seleccione el idioma y haga clic en siguiente.
El directorio de datos predeterminado para Moodle se mostrará como /var/www/clients/client1/web42/moodledata pero nuestro directorio está en la carpeta privada, así que modifique la ruta para que use la carpeta de Moodle en la carpeta privada en su lugar:/var/www/clients/client1/web42/private/moodledata
Luego seleccione Tipo de base de datos, en mi caso MySql.
Luego complete con MySql Data.
Host de la base de datos:localhost
Nombre de la base de datos: c1_moodle
Usuario de la base de datos: c1_moodle
Contraseña de la base de datos:la que elija durante la creación del usuario de la base de datos
Prefijo de tabla:mdl_
Puerto de la base de datos:
Zócalo Unix:
Ahora haga clic y espere, después de unos segundos debería ver las condiciones que debe aceptar.
Después de eso, Modile realizará algunas comprobaciones del sistema para comprobar que todo funciona correctamente.
¡¡¡Todo debería ser verde ahora mismo!!!
Haga clic en Continuar y aparecerán otras comprobaciones....
Haga clic en continuar y complete los datos del usuario administrador (Nombre, Nombre, contraseña de usuario...).
Debes completar los datos de tu nueva plataforma de aprendizaje y evaluación :)
¡Disfruta de tus cursos!