viernes, 30 de mayo de 2008

Instalación del CMS eprints bajo Windows

En esta ocasión voy a explicar cómo instalar eprints bajo entorno Windows, ya que previsiblemente será este sistema el que soporte el proyecto que me estoy planteando. Para los que se pregunten qué es eprints decir que es un CMS (Gestor de contenidos) pensado para almacenar e indexar información, es decir, para trabajar como repositorio de información indexando la misma en función de distintos criterios ya sean textos, imágenes o vídeos.

Una vez instalado podremos ver las posibilidades que nos ofrece, la información es una traducción al castellano, con ligeras variaciones, de la que podéis encontrar en http://wiki.eprints.org:


Requisitos e Instalación

Cada componente del sistema completo EPrints lo instalaremos en un subdirectorio de C:\EPrints\ para facilitar el mantenimiento.

Las versiones anteriores a la r3380 se instalarán obligatoriamente en c:\EPrints\

Las posteriores a la r3380 nos permiten especificar el directorio. Sin embargo, EPrints asume que GhostScript y catdoc pueden encontrar la ruta al directorio.


Software

1.- Apache:

Las versiones 2.2.6/2.2.8 tienen una incompatibilidad con mod_perl. Debemos usar 2.2.4 hasta que se solucione el problema. Podemos descargarnos el fichero MSI disponible en :

http://archive.apache.org/dist/httpd/binaries/win32/

Ejecuta el instalador. Cuándo te pregunte instálalo en el directorio c:\EPrints\Apache2.

2.-ActivePerl

ActiveState Perl 822 tiene una incompatibilidad con mod_perl. Usa la 820 hasta que se solucione.

Descargamos ActiveState Perl Free Edition de: http://downloads.activestate.com/ActivePerl/Windows/5.8/ActivePerl-5.8.8.820-MSWin32-x86-274739.msi

Instalación:

Ejecutar el instalador de ActivePerl. Seleccionar el directorio C:\EPrints\Perl. Asegurarse de que Perl es añadido al PATH.

Necesitaremos establecer ciertas variables de entorno para que Eprints pueda encontrar Perl y sus librerías. Para establecer las variables de entorno: Control Panel → System → Advanced system settings → Advanced → Environment Variables…

Cuando hayamos completado la instalación tenemos que instalar algunos componentes desde la línea de comandos. Desde la línea de comandos tecleamos:

El instalador de mod_perl preguntará el path al módulo Apache. Teclear:

C:/EPrints/Apache2/modules

Para añadir soporte de mod_perl a Apache, editamos el fichero de configuración de Apache: C:\EPrints\Apache2\conf\httpd.conf con un editor de texto y añadimos las siguientes líneas:

LoadFile "C:/EPrints/Perl/bin/perl58.dll"
LoadModule perl_module modules/mod_perl.so

Configuración de Apache y Perl.

Debemos asegurarnos de que C:\EPrints\Perl\bin y C:\EPrints\Apache2\bin están incluidas en la variable Path separadas por un punto y coma ;

Creamos una nueva variable PERL5LIB con el valor C:/EPrints/EPrints/perl_lib (atención a las barras invertidas).

3.- MySQL

Descargar MySQL Community Server, Windows Essentials (x86) de: http://dev.mysql.com/downloads

EPrints ha sido testeado con MySQL 5.0, pero debería funcionar con otras versiones

Instalación:

Ejecutamos el instalador y seleccionamos Custom installation – instalación personalizada- en C:\EPrints\MySQL. Necesitaremos activar las siguientes opciones:

  • Instalar los programas cliente y servidor
  • No instalar los ficheros C
  • Evitar registrarse en MySQL.com

Configuración:

Al finalizar la instalación necesitaremos configurar el servidor desde la línea de comandos. Esta herramienta también estará disponible después desde el Menú Inicio.

Seleccionamos Instalación Detallada. Aceptamos la mayor parte de las configuraciones por defecto:

Tipo de carácter: Latin-1

Seleccionamos una contraseña segura para el root cuando nos pregunte

Cuando la configuración ha finalizado necesitamos establecer una opción manualmente en el fichero de configuración de MySQL, para ello editamos C:\EPrints\MySQL\my.ini con un editor de texto:

En sql-mode option, borramos NO_AUTO_CREATE_USER de la lista

Reiniciamos MySQL para que tengan efecto los cambios. En Control Panel → Administrative Tools → Services, buscamos MySQL y seleccionamos Restart.

4.- EPrints 3.0 Windows Installer:

http://files.eprints.org/336/1/EPrints.exe

Como todas las versiones de EPrints se ofrece sin garantía y no se garantiza que esté libre de fallos. Una buena política de copias de seguridad es esencial.

Instalación

Ejecutamos el instalador e instalamos los ficheros en C:\EPrints\EPrints.

Configuración

Podemos ejecutar epadmin para configurar el fichero. Este proceso es el mismo en todas las plataformas, por tanto, se pueden seguir las instrucciones detalladas del proceso en Installation (traducción del fichero de instalación útil para todas las plataformas:

Eprints necesita ser instalado con el mismo usuario con el que se ejecuta el servidor web. Sugieren que se instale con el usuario “eprints” y grupo “eprints”. Bajo algunas plataformas Unix, la creación de usuarios y grupos se puede realizar con el comando “adduser”. En otro caso consulta la configuración de tu sistema operativo.

Descomprimimos el fichero eprints.tar.gz:

% gunzip eprints-3.something.tar.gz
% tar xf eprints-3.something.tar

Ejecutamos el script “configure”. Es un script /bin/sh que intentará localizar varias partes del sistema tales como el binario perl. También chequeará el sistema en busca de los componentes requeridos:

 % cd eprints-3.something
% ./configure

Por defecto el sistema se instala como usuario y grupo “eprints”. Necesitaremos cambiar si no estamos como root o “eprints”.

El script de configuración acepta algunas opciones

--help

List all the options (many are intended for compiled software and are ignored).

Recomendadas

--prefix=PREFIX

Where to install EPrints (or look for a version to upgrade). By default /opt/eprints3/

--with-smtp-server=[HOST]

Use HOST to deliver mail. If the server running EPrints has an MTA such as exim or sendmail, you can specify localhost. If you do not specify this option, you will get a warning to configure it later.

--with-user=[USER]

Install eprints to run as USER. By default "eprints".

--with-group=[GROUP]

Install eprints to run as GROUP. By default "eprints".

Optional:

--with-perl=[PATH]

Path of perl interpreter (in case configure can't find it, or you have more than one and want to use a specific one).

--with-virtualhost=[VIRTUALHOST]

Use VIRTUALHOST rather than * for apache VirtualHost directives.

--with-toolpath=[PATH]

An alternate path to search for the required binaries.

--disable-diskfree

Disable disk free space calls. These can cause problems on some platforms, notably 64-bit.

Deprecated:

--with-apache=1

Use Apache 1.x.x instead of 2.x.x, but EPrints 3 does not support this.

Una vez que estamos contentos con nuestra configuración, instalamos eprints mediante install.pl:

% ./install.pl

Ahora debemos editar el fichero de configuración de nuestra copia de apache.

/Getting Started

Nota: todo lo que se necesita para ejecutar una herramienta de línea de comandos de EPrints es antecederlo con la palabra perl:

perl bin/generate_static myarchive

En primer lugar desde la línea de comandos cambiamos al directorio C:\EPrints\EPrints. Para iniciar el proceso ejecutamos:

perl bin/epadmin create

epadmin fallará al ejecutar generate_static, import_subjects, and generate_apacheconf automáticamente. Ejecútalos manualmente de acuerdo con las instrucciones estándar.

Finalmente se necesitará añadir el fichero de configuración de EPrints a Apache. Editamos C:\EPrints\Apache2\conf\httpd.conf y añadimos al final del fichero:

PerlPassEnv PERL5LIB
Include C:/EPrints/EPrints/cfg/apache.conf

Inciando Apache

Controla Apache desde el panel. Para e inicia el servicio antes de probarlo, para recargar el fichero de configuración.

Finalizar

EPrints debería estar accesible desde nuestro explorador web en el hostname que especificamos en epadmin anteriormente.

 

Software opcional:

Estas herramientas no son esenciales pero aportan funcionalidades extras.

a.- GhostScript 8.60

Se usa para convertir los formatos PS y PDF. Si no se instala estos formatos no se previsualizaran y tampoco podrán ser indexados por Eprints aunque los usuarios podrán acceder con normalidad a ellos. Descárgalo de :


http://downloads.sourceforge.net/ghostscript/gs860w32.exe

Debemos instalarlo en C:\EPrints\GhostScript

b.- Catdoc 0.94.2

Se usa para convertir los ficheros de Microsoft Word y Powerpoint. Si no se instala EPrints no indexará estos formatos aunque permitirá acceder a los mismos.

Descárgalo de: http://webaugur.com/wares/files/catdoc-0.94.2-win32.zip

Debemos extraerlo en: C:\EPrints\catdoc-0.94.2 .

c.- ImageMagick 6.3.5-6

Se usa para la conversión de las imágenes para la previsualización. Si no se instala no podrán ser visualizadas y los thumbnails tendrán un icono genérico.

Nota: Las versiones recientes no trabajan con la versión 820 de ActiveState Perl. Usa la 6.3.5-6 hasta que se solucione.

Las versiones antiguas no están disponibles en el sitio principal.

Descarga la versión Q16 de: ftp://gd.tuwien.ac.at/pub/graphics/ImageMagick/windows/

Debe ser instalado en: C:\EPrints\ImageMagick . Seleccionamos las opciones "Update executable search path" and "Install PerlMagick for ActiveState Perl". El resto de opciones pueden no ser seleccionadas.

Puede ocurrir un error ppm cuando instalamos el componente Perl. Si ocurre, abrimos una línea de comandos y tecleamos:

cd\EPrints\ImageMagick\PerlMagick
ppm install Image-Magick.ppd

Administración.

Programación de tareas

Podemos usar el Programador de Tareas de Windows para automatizar tareas habituales, de modo similar al demonio cron de Unix. Esta herramienta la podemos encontrar en vista en Accessories → System Tools → Task Scheduler.

Seleccionamos crear tarea básica y añadimos una nueva tarea. Necesitaremos cuatro tareas en total: una para generar_vistas y tres para búsquedas salvadas.

Para la frecuencia, seleccionamos Diaria, Semanal o Mensual y configuramos la hora adecuadamente.

Para Acción, seleccionamos Iniciar un programa:

· El nombre del programa es C:\EPrints\Perl\bin\perl.exe

· Los argumentos son el camino al script y sus argumentos:

        C:\EPrints\EPrints\bin\send_alerts myarchive daily
        C:\EPrints\EPrints\bin\send_alerts myarchive weekly
        C:\EPrints\EPrints\bin\send_alerts myarchive monthly
        C:\EPrints\EPrints\bin\generate_views myarchive

· Iniciar en C:\EPrints\EPrints – en la ventana final seleccionamos mostrar las propiedades para la tarea.

· Seleccionamos tanto si está conectado como si no y seleccionamos NO almacenar la contraseña.

Indexado

El programador de tareas también se puede emplear para sustituir al demonio indexador. Las opciones son las siguientes, excepto con qué se llama al script:

C:\EPrints\EPrints\bin\makeindex

Sin embargo para ejecutarlo con mayor frecuencia que una vez al día es necesario crear un Trigger recurrente. En la ventana de propiedades, modificamos el Trigger y seleccionamos Repetir la tarea cada: opcional.

4 comentarios:

Alejandro dijo...

Hola, he intentado instalar un par de veces y siempre quedo estancado en el mismo lugar. Luego de configurar Eprints en la consola, se pide agregar unas linas al httpd.conf de Apache. Es aqui el problema, las agrego al final del documento, guardo el cambio y al reiniciar apache no me lo permite.
Alguna idea de que puede estar sucediendo?
Desde ya muchas gracias.

Carlos dijo...

La traducción está muy bien, pero a ver si alguien lo consigue y nos cuenta los detalles, xq falla por todas partes.

tecnoadmin dijo...

Como os comento al principio esto surge con un proyecto. Decido hacer la traducción que como dice carlos creo que está bastante bien.
Lo malo es que cuando estaba haciendo la instalación, el proyecto se fue al garete y del cabreo ni tan siquiera finalicé la instalación.
En cualquier caso intentaré en Septiembre/Octubre, cuando disponga de tiempo hacer la instalación como sea, si con estos pasos no va.
En cualquier caso perdonad los errores pero os puedo asegurar que algún que otro fallo ya lo eliminé con respecto al original en la fase de traducción.

carlos dijo...

Merece la pena instalarse el servidor en un linux, ubuntu por ejemplo (probado), porque va de perlas. No da ningún problema si se sigue paso a paso la guía. Me he peleado bastante con windows y no ha habido manera.