7.2.2.3.7. DMS

Un DMS (es castellano, Sistema de gestión documental) es una aplicación dedicada de la clasificación, gestión y ordenación de documentos. Para el caso que nos ocupa usaremos un DMS web llamando SeedDMS.

7.2.2.3.7.1. Preliminares

Partiremos de disponer ya de un servidor web accesible a través del nombre docs.example.net y con soporte para php y msql.

Para seeddms, además, requeriremos la instalación previa de los siguientes paquetes:

# apt install php-{gd,mbstring,log,http-webdav-server,pear} imagemagick poppler-utils catdoc id3

También es necesario el framework zend, pero la versión 1, que es la que soporta seeddms, por lo que no lo instalaremos a través del paquete (Stretch trae la versión 2 y Buster la 3), sino de pear, que acabamos de instalar:

# pear channel-discover pear.dotkernel.com/zf1/svn
# pear install zend/zend

7.2.2.3.7.2. Configuración de nginx

Basta la más básica poara la ejecución de una aplicación PHP:

server {
   listen  80;
   listen 443 ssl;

   server_name docs.example.net;

   root /srv/www/seeddms;
   try_files $uri $uri/ =404;
   index index.php;

   include snippets/snakeoil.conf;

   # Redirección al sitio seguro
   if ($https != "on") {
      return 301 https://$host$request_uri;
   }

   # Aquí almacenaremos los documentos
   # que gestiona la aplicación.
   location ^~ /data {
      return 404;
   }

   location ~ \.php$ {
      include snippets/fastcgi-php.conf;
      fastcgi_pass php;
   }
}

Como vemos, presuponemos que la aplicación se instalará dentro del directorio /srv/www/seeddms.

7.2.2.3.7.3. Instalación

A través de la página principal de SeedDMS podemos llegar a los enlaces de descarga de la última versión estable[1]. Es necesario descargar cuatro ficheros y tratarlos del siguiente modo:

# pear install SeedDMS_Core-5.1.9.tgz
# pear install SeedDMS_Preview-5.1.9.tgz
# pear install SeedDMS_Lucene-5.1.9.tgz
# mkdir /srv/www/seeddms
# tar -C /srv/www/seeddms -axvf seeddms-5.1.9.tar.gz --strip-component=1

Además debemos preparar el directorio dónde se alojarán los documentos que gestionará seeddms y advertirle de que la próxima vez que lo arranquemos nuestra intención es configurarlo:

# mkdir -p /srv/www/seeddms/{conf,data/{staging,lucene,cache}}
# chown -R www-data:www-data /srv/www/seeddms/{conf,data}
# touch /srv/www/seeddms/conf/ENABLE_INSTALL_TOOL

Por último, podemos entrar en el entorno de mysql y crear el usuario con permisos para escribir en la base de datos:

CREATE DATABASE seeddms;
GRANT ALL PRIVILEGES ON seeddms.* TO 'seeddms'@'localhost' IDENTIFIED BY 'contraseña';

Listo, entramos en:

http://docs.example.net/install

y completamos la instalación. El acceso se hará a través del usuario «admin» con contraseña «admin».

Nota

En la instalación sólo hay que definir:

  • El directorio de la aplicación (/srv/www/seeddms), que debería haberse averiguado bien.

  • La ruta (/, en nuestro caso), que también debería estar bien.

  • Los subdirectorios que almacenarán los ficheros subidos, que sí deberemos cambiar, puesto que la aplicación los sugerirá a partir de /srv/www/seeddms/../data, es decir, de un directorio fuera del directorio de la aplicación, mientras que nosotros lo hemos incluido dentro[2].

  • Los datos referentes a la conexión a la base de datos. Asegúrese de marcar que deben generarse las tablas, ya que no lo hemos hecho a mano.

7.2.2.3.7.4. Postinstalación

  1. Es bastante probable que, si no ha realizado ninguna modificación en la configuración de PHP y nginx, el tamaño máximo de fichero sean unos escasos 2MB. Para ampliar este límite, consulte la explicación dada en la instalación de moodle.

  2. ¡¡Recuerde cambiar la contraseña del administrador!! Existe otro usuario invitado (guest) que, para que pueda usarse, necesita que se le fije una contraseña.

  3. En la Administración necesita generar un «índice de texto completo» para que la «búsqueda de texto completo» funcione[3].

Notas al pie