martes, 8 de marzo de 2011

Instalación de MOODLE en un equipo de desarrollo Web

Gracias a los comentarios, posts y replies de los compañeros en los diferentes foros y blogs de la asignatura he podido solucionar algunos problemas en la instlación o gestión del modulo. Aprovecho esta entrada para agradecerlo, porque de verdad que son útiles. En esta entrada espero solucionar otros posibles problemas que se puedan tener en la instalación del Moodle.


Como ya he comentado, el objetivo en esta entrada es poner de manifiesto alguno de los problemas que me he encontrado en la instalación de Moodle en un equipo informático preparado para el desarrollo de aplicaciones Web en .NET. Supongo que a la gran mayoría no le afectará, porque es un caso especial, pero todos aquellos que os dediquéis a desarrollar supongo que os va a ser bastante útil.

Una persona que se dedica al desarrollo Web, es decir a crear aplicaciones que puedan ser manejadas desde un navegador Web, necesita un equipo con ciertos programas preparados para permitirle realizar dicha tarea. Estos programas los podemos resumir principalmente en:

  • Servidor Web: Donde alojar lo que desarrollemos, y donde el navegador se conecta para consultar. Si esta en nuestra maquina accedemos como (http://localhost/) y si esta en Internet con la url especifica.
  • Servidor de Base de Datos: Es el encargado de gestionar las bases de datos de las que se alimentan nuestras aplicaciones.
  • IDE de desarrollo: Es el programa que utilizamos para generar el código necesario para que las aplicaciones hagan lo que se esperan de ellas. El programa de programación dicho brutamente.
En mi caso, al desarrollar para Microsoft .NET en mi equipo tengo instalado:
  • Servidor Web: IIS, que es el servidor Web por defecto de Microsoft
  • Servidor de Base de Datos: Puede ser cualquiera. MSQL Server, MySQL, Oracle, etc…
  • IDE de desarrollo: O Mono (open source) o Visual Studio
El problema radica, que Moodle necesita para funcionar el set de aplicaciones de Java. Es decir, el servidor Web que utiliza es Apache, el IDE de desarrollo Eclipse, etc (esta parte ya se ha explicado en los apuntes del tema 3).

En una maquina en la que ya haya otro servidor Web instalado surgirán problemas de incompatibilidad, y por tanto no podremos instalar correctamente el Moodle. Como así ha sido en mi caso.

Aquí os dejo un par de soluciones a problemas que me han surgido por este motivo (complementando a la información que se ha publico en el fantástico articulo de Naxto: http://unirelearningmaster.blogspot.com/2011/03/experiencias-de-moodle-sobre-windows.html):

·         ¡MI puerto 80 está ocupado!
Como bien explica Natxo en su post, el puerto 80 no puede estar ocupado por un servidor Web. Programas como Skype ocupan dicho puerto, con lo que hay que deshabilitar que lo ocupen.

Ahora bien, en el caso de tener otro servidor Web instlado, como IIS, es imposible deshabiltiar que el 80 lo ocupe también otro servidor Web como Apache. Solución:

Ya que nuestro localhost tiene por defecto el puerto 80 como configuración debemos separarlos para que puedan funcionar juntos, para ello debemos dejar uno de los dos sistemas con el puerto 80 (http://localhost) y el otro cambiarlo al 8080 u 8000 ( http://localhost:8080). Dejaremos que el IIS trabaje en el 80, y Apache lo cambiaremos al 8080.

Es tan fácil como en la carpeta donde ejecutemos el Moodle (por ejemplo, C:\Moodle), ir a la carpeta “server”, luego “apache”, y finalmente “conf” (server\apache\conf), y editamos el archivo “httpd.conf”.

Abrimos el archivo con el editor de textos y buscamos la instrucción “Listen”, en el docuemnto veremos algo así:

#
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, instead of the default. See also the <VirtualHost>
# directive.
#
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
#Listen 12.34.56.78:80
Listen 80

Simplemente cambiamos el “Listen 80” por “Listen 8080”, y guardamos los cambios. Ahora nos ejecturá el servidor Web en el puerto 8080, y ya no habrán problemas de conflictos entre servidores.

Solo puntualizar, que después de este cambio, para acceder al Moodle una vez instalado y ejecutándose, la url es: http://localhost:8080

·         ¡No recuerdo mi contraseña de root del MySQL!
Este problema no es que tenga porque pasarle a nadie, pero creo que puede ser útil. A mi me ha pasado, tenia instalado este gestor de Base de Datos desde hacia tiempo, y no recordaba la contraseña que puse en su momento a root. Con lo que no se podía ejecutar el Moodle.

Para recuperar la contraseña he seguido los pasos expuestos en este post oficial de MySQL:

Espero que todo esto os sea de ayuda, y os haga perder el tiempo justo en una instalación.

1 comentario: