Tuesday, May 08, 2007

Instalación de la plataforma Moodle en Windows

En ocasiones es necesaria la instalación de una plataforma de educación a distancia en sistemas operativos Win32, por lo que en este documento se hace una propuesta de instalación de la plataforma Moodle en servidores Windows.

Software a instalar
-
Apache2.0.59-openssl-0.9.7j
-
PHP 4.4.6
Extensiones: php_bz2.dll, php_domxml.dll, php_gd2.dll, php_ldap.dll, php_mbstring.dll, php_mssql.dll, php_zip.dll.
-
MySQL 4.1.22
-
phpMyAdmin 2.9.0.2
-
Moodle 1.5.3

Especificaciones de cada software

Apache

Primeramente instalamos el apache desde el binario en la ruta D://AppWeb/Apache2 a través de pasos sencillos que te va indicando el Wizard. Una vez instalado, para incrementar la seguridad de la plataforma es necesario configurarle autenticación segura a través de protocolo SSL, para lo que se deben seguir los siguientes pasos:

  1. Copiar la plantilla openssl.cnf dentro de la carpeta bin/ del apache

  1. Crear carpetas donde se guardarán las llaves privadas y el certificado


  1. Ejecutar una consola de Windows y colocarse dentro de la carpeta bin/ del apache.


  1. Crear el certificado


Cuando se ejecute esta línea de comando esto pedirá una clave a entrar, la cual será la del certificado y le será pedida cada vez que reinicie el apache.

  1. Quitarle la clave al certificado privado para que cuando se reinicie el apache no pida la misma.


Cuando se ejecute esta ultima línea de comando le será pedida una clave, la cual es la misma introducida en el paso anterior.

  1. Mover server.crt y server.key a sus respectivas carpetas.


  1. Modificar el fichero de configuración ssl.conf

· Remover las líneas <ifdefine> y </ifdefine>.

· Cambiar las líneas SSLCertificateFile y SSLCertificateKeyFile (Cambiar la ruta a donde está su certificado y llave respectivamente)

Ahora creamos una carpeta donde se alojaran los sitios web, cambiando así el que trae por defecto el apache:

1. Crear carpeta D://AppWeb/www

2. Editar la directiva documentRoot dentro del httpd.conf, cambiar DocumentRoot "D:/Apache2/htdocs" por DocumentRoot "D:/AppServ/www".


Además de configurar el certificado SSL y el documentRoot se necesitan cambiar algunos otros parámetros en el httpd.conf con vista a optimizar el rendimiento.

Timeout 30

KeepAlive On

MaxKeepAliveRequests 1000

KeepAliveTimeout 3


PHP

Para la instalación de este software solo se debe descompactar el php, copiarlo en una ruta cualquiera (Ej. D://AppWeb/php4) y luego configurar el apache para que adicione al mismo como un modulo de este.

Para lo que se debe:

1- Editar el httpd.conf del apache y adicionar las siguientes directivas.


2- Copiar el archivo de configuración por defecto que trae dentro de su carpeta de instalación el php (php.ini-recommended) para c://Windows/php.ini.

3- Copiar php4ts.dll que se encuentra dentro de la instalacion del php para c://Windows/System32/

Luego se deben habilitar las extensiones necesarias para el completo funcionamiento de la plataforma Moodle

1- Editar y arreglar la ruta de las extensiones dentro del php.ini

· Cambiar ;extension_dir = "./extensions" por extension_dir = " D://AppWeb/php4/extensions"

2- Descomentar las extensiones:

· extension=php_bz2.dll

· extension=php_domxml.dll

· extension=php_gd2.dll

· extension=php_ldap.dll

· extension=php_mbstring.dll

· extension=php_openssl.dll

· extension=php_zip.dll

Posteriormente se modificarán algunas directivas del fichero de configuración del PHP (php.ini) para lograr un mejor rendimiento y una mayor seguridad.

safe_mode = Off

max_input_time = 60

memory_limit = 16M

display_errors = Off

register_globals = Off

post_max_size = 2M

file_uploads = On

upload_max_filesize = 2M


Y por ultimo se debe reiniciar el apache para que tome todos los cambios realizados.

MySql

Para la instalación de esta aplicación solo se necesita ejecutar el binario de la misma y seguir los pasos que presenta el wizard de instalación.

Una vez que se instala, se debe forzar a que el método de autenticación que utilice sea el modo viejo (OLD_PASSWORD)


Reiniciando por ultimo el servidor MySql para que tome todos los cambios.

phpMyAdmin

Para instalar esta aplicación solo se debe copiar el código fuente dentro de la carpeta donde están publicados los sitios web.

Moodle 1.5.3

Antes de instalar el moodle debe crear las condiciones previas:

  1. Crear directorio de datos del moodle el cual debe estar fuera de la carpeta donde están publicados los sitios web (Ej. D://AppWeb/moodledata).
  2. Crear una base de datos llamada “moodle” en el mysql a través del phpMyAdmin.

Para instalar el moodle debe seguir los siguientes pasos:

  1. Seleccionar el lenguaje

  1. Comprobación de ajustes PHP (Ya esto fue configurado cuando se instalo el PHP)

  1. Configuración de localizaciones

Dirección Web: http://midominio.com

Directorio moodle: D://AppWeb/www/moodle

Directorio de datos: D://AppWeb/moodledata

  1. Configurar base de datos

Tipo: MySQL

Servidor: localhost

Base de datos: moodle (Esta debe haber sido creada anteriormente)

Usuario: root

Contraseña: xxxxx

Prefijo de tablas: mdl_

  1. Creación del config.php del moodle.

  1. Aceptación de la licencia de moodle.

  1. Configuración de las variables globales del moodle

secureforms: Si

loginhttps: Si (En caso de salir deshabilitada esta opción, entonces ir a la tabla mdl_config del moodle y en el registro loginhttps poner valor 1)

Conclusiones

Una vez concluida la realización de todas estas indicaciones el servidor debe estar listo para ser utilizado, pero es de imperiosa necesidad hacerle pruebas de carga, tanto con las herramientas de benchmark (jmeter y otras) como con usuarios reales.