Instalar moodle en un servidor con otra plataforma existente

Instalar moodle en un servidor con otra plataforma existente

by Pedro Samuel Arteaga Gonzales -
Number of replies: 6

Estimados,

 

He instalado Moodle desde 0 en un servidor limpio pero esta vez la misión subió de nivel. Actualmente el servidor CentOS cuenta con una plataforma LMS distinta y debo instalar Moodle 3.0.10 sin tocar la plataforma actual. El servidor cuenta con dominio, SSL y suPHP. Estoy pensando usar ProxyPass para tomar el 8080 pero no sé si sea la opción más óptima. Agradezco de antemano cualquier recomendación para este gran reto.

Datos del servidor:

-          Servidor en Azure

-          CentOS 6.10

-          Apache 2.2.15

-          MySQL 5.6

-          PHP       5.6

Saludos.


PD. La carpeta /var/www/html no es la ruta de defecto.

Average of ratings: -
In reply to Pedro Samuel Arteaga Gonzales

Re: Instalar moodle en un servidor con otra plataforma existente

by Juan Pablo Miranda Aguayo -
Picture of Moodlers de gran ayuda

Hola Pedro.

Según entiendo, si vas a utilizar otro puerto distinto del 80 para un servidor web, para acceder desde un navegador cualquiera desde Internet habrá que especificarlo... tudominio.com:8080 y dependiendo de tus usuarios resultará más o menos complicado.

Aunque la carpeta por defecto del servidor web no sea /var/www/html, da lo mismo.

Imagina que la carpeta por defecto configurada en el servidor web es /ruta/carpeta/web ... todo lo que haya dentro de la carpeta ../web será accesible desde Internet (igual que lo es ../html)

Por tanto, podrías hacer:

/ruta/carpeta/web/moodle, para acceder al contenido de tu instalación Moodle y

/ruta/carpeta/web/otrolms, para acceder al contenido del otro LMS que tienes instalado.

De esta forma podrás acceder con las siguientes URLs...

http(s)://tudominio.com/moodle a la plataforma Moodle, y

http(s)://tudominio.com/otrolms a la otra plataforma LMS

Por supuesto, la ruta de 'moodledata' tendrá que estar en /ruta/carpeta/moodledata

La ruta para la carpeta de datos del otro LMS, si existe, dependerá de su configuración.

También podrías crear subdominios y que cada uno de ellos "apunte" a una de las carpetas. Por ejemplo: http(s)://moodle.tudominio.com apuntaría a tu carpeta 'moodle' y http(s)://otrolms.tudominio.com apuntaría a la carpeta 'otrolms'

De igual forma, tendrás 2 bases de datos. Una para Moodle que podría llamarse 'moodledb' y otra para el otro LMS 'otrolmsdb'.

Para facilitar las cosas, procura que las versiones de PHP que utilizarán tanto Moodle como el otro LMS sean la misma. Si no, tocará instalar las versiones de PHP correspondientes y configurar el servidor PHP y/o el servidor web (Apache en tu caso) para que cada versión vaya a cada carpeta según corresponda.

Un saludo

JP

Average of ratings: Útil (1)
In reply to Juan Pablo Miranda Aguayo

Re: Instalar moodle en un servidor con otra plataforma existente

by Pedro Samuel Arteaga Gonzales -
Muchas gracias por sus consejos. Según entiendo la mejor opción es usar subdominios. Con respecto a las versiones, efectivamente, busqué la version de moodle que se acomoda al servidor y los servicios ya instalados. Espero contar con su ayuda y de la comunidad para lograr este gran reto. Estaré reportando el avance de este proyecto. Saludos.
In reply to Juan Pablo Miranda Aguayo

Re: Instalar moodle en un servidor con otra plataforma existente

by Pedro Samuel Arteaga Gonzales -

Estimados,

 

Agradezco todas las recomendaciones y ayuda que me brindaron. Pero me ha surgido un problema que no logro solucionarlo.

Trabajo sobre un servidor Centos 6.10

Tiene los siguientes servicios:

Apache 2.2.15

MySQL 5.6.42

PHP       5.6.38

SSH        5.3pl

Actualmente tiene la plataforma E-Learning “LMS1” pero desean implementar el Moodle sin tocar el LMS1, quieren que trabaje 2 plataformas.

 

Procedí creando la carpeta similar a como instalaron el otro LMS. Suponiendo que la ruta de la anterior plataforma es "/carpeta/proyectos/proyecto1/public_html/LMS1" que tiene su respectivo lms1.conf

 

un pequeño extracto del conf: 

------------------------------------

<VirtualHost *:443>

    # Config

    ServerName lms1.institucion.pe

    DocumentRoot /carpeta/proyectos/proyecto1/public_html/LMS1

    ErrorLog ...

    CustomLog ...

 

    SSLEngine ...

 

    suPHP_Engine ...

 

    <Directory "/carpeta/proyectos/proyecto1/public_html/LMS1">

                AllowOverride All

                Order allow,deny

                Allow from all

    </Directory> 

    ... 

</VirtualHost> 

--------------------------------------------------------------------

 

he creado la ruta para el moodle en "/carpeta/proyectos/proyecto1/public_html/moodle" y he creado un archivo similar al anterior conf llamado moodle.conf con las mismas características solo que dirigiéndose a su correspondiente ruta, también tomé las mismas configuraciones del ssl y suPHP pero el resultado fue que el servidor no levanta. Podrían indicarme que es lo que estoy haciendo mal o como debería hacerse. Normalmente siempre usaba la ruta por defecto que es la carpeta /var/www/html y las aplicaciones funcionaban normal pero ahora que la ruta del documento root se ha movido pues no reconoce todo lo nuevo que he creado.

Adicionalmente quisiera indicar que aun no se gestiona el DNS para el moodle, estoy ingresando por IP pero sale el siguiente mensaje: Forbidden You don't have permission to access /moodle/ on this server. Gracias de antemano por sus respuestas.


In reply to Pedro Samuel Arteaga Gonzales

Re: Instalar moodle en un servidor con otra plataforma existente

by Juan Pablo Miranda Aguayo -
Picture of Moodlers de gran ayuda

Hola Pedro, nuevamente.

A ver si te es útil esto: https://chachocool.com/apache-virtual-host-como-configurar-servidores-virtuales-en-apache-2-4/

Por otro lado, quizá te sería útil, como ayuda a la administración del servidor, Virtualmin. Es un entorno gráfico (web) desde el que puedes configurar fácilmente distintos servidores web virtuales, darles acceso FTP, crear usuarios, bases de datos, etc. al estilo de Plesk o CPanel: https://www.virtualmin.com/

Hay una versión GPL más que suficiente para lo que quieres hacer.

Saludos,

JP

Average of ratings: Útil (1)
In reply to Juan Pablo Miranda Aguayo

Re: Instalar moodle en un servidor con otra plataforma existente

by Pedro Samuel Arteaga Gonzales -

Estimado, he logrado levantar el moodle gracias a sus consejos. Lastimosamente no me permiten instalar otras herramientas adicionales.

La plataforma Moodle ya se muestra por IP. Queda pendiente configurar el suPHP, el dominio y el SSL. Ahora me surgen algunas consultas:

- Debo configurar el cron antes o después de establecer correctamente el dominio?

- solo basta ejecutar el siguiente comando para activar el cron?

/usr/bin/php /ruta/hacia/moodle/admin/cli/cron.php

 este comando no elimina el cron de la otra plataforma LMS que había mencionado en los comentarios anteriores?

- Para pedirles al área de TI que me brinden un nuevo subdominio, que requisitos me van a solicitar, teniendo en cuenta que ellos ya tienen un subdominio registrado para el otro LMS.

- Cual es primero, ¿comprar el certificado SSL o definir el DNS con TI?

- Si el LMS actual ya tiene un SSL del tipo RapidSLL, es necesario repetir la creación del private-key y el CSR


Agradezco de antemano todas las respuestas que me pueda brindar. Saludos.

In reply to Pedro Samuel Arteaga Gonzales

Re: Instalar moodle en un servidor con otra plataforma existente

by Juan Pablo Miranda Aguayo -
Picture of Moodlers de gran ayuda

Hola, Pedro.

Dependiendo si estás utilizando un servicio de hosting o un servidor dedicado, deberás hacer de una forma u otra.

Originalmente, entendí que estabas utilizando un servidor dedicado o VPS.

Si la nueva plataforma se muestra ya por IP debes corregir el tema de los servidores virtuales de Apache, ya que, según entendí de tus posts anteriores, tienes ahora dos plataformas en el mismo servidor. ¿Aún no le has asignado un subdominio?

- Debo configurar el cron antes o después de establecer correctamente el dominio?

El cron debe configurarse cuando la plataforma vaya a ponerse operativa para cargarle cursos y/o para que empiecen a utilizarla los alumnos. Se puede hacer antes, pero no es necesario.

- solo basta ejecutar el siguiente comando para activar el cron?

Si. Y adaptándolo al ejemplo que te ponía en mi primera respuesta, quedaría algo así:

/usr/bin/php /ruta/carpeta/web/moodle/admin/cli/cron.php para el que acabas de instalar, y

/usr/bin/php /ruta/carpeta/web/otrolms/admin/cli/cron.php para el otro que ya tenías instalado.

 este comando no elimina el cron de la otra plataforma LMS que había mencionado en los comentarios anteriores?

No. No tienen nada que ver uno y otro. Están en carpetas diferentes. Incluso, según la configuración de Apache, las carpetas "/carpeta"  serían diferentes: carpeta1 y carpeta2.

- Para pedirles al área de TI que me brinden un nuevo subdominio, que requisitos me van a solicitar, teniendo en cuenta que ellos ya tienen un subdominio registrado para el otro LMS.

Eso depende del tipo de contrato que tengas. Hay algunos proveedores que al contratar un dominio, puedes tú crear "n" subdominios.

Solo has de configurar el registro A del nuevo subdominio para que 'apunte' a la IP del servidor. (Fíjate cómo está configurado el primer subdominio, el del otro LMS)

- Cual es primero, ¿comprar el certificado SSL o definir el DNS con TI?

Si lo compras antes, tendrás que tener claro que ese es el que luego vas a configurar en tu servidor. Aunque esto también depende del tipo de certificado que hayas contratado porque se pueden contratar certificados para un dominio y todos sus subdominios. Son los llamados 'wildcard'.

También existe la posibilidad de utilizar certificados gratuitos, como el de Let's Encrypt https://letsencrypt.org

- Si el LMS actual ya tiene un SSL del tipo RapidSLL, es necesario repetir la creación del private-key y el CSR

Eso depende del contrato con el proveedor. Si has contratado un 'wildcard' no sería necesario ya que el mismo certificado otorgado para el dominio te sirve para todos los subdominios que se vayan a crear más adelante.

En cambio, si se ha contratado un único certificado para un único dominio o subdominio, deberás adquirir otro para el nuevo subdominio.

Saludos

JP

 

 

 

 

Average of ratings: Útil (2)